Release Notes NCache 4.1 (Service Pack 3)

Tuesday, October 24, 2013

Introduction

NCache 4.1 SP3 contains some important enhancements and major bug fixes related to the stability of the cache. It is a recommended upgrade for all NCache 4.1 users.

Enhancements and New Additions

Following are some enhancements made in this release:

  1. Operation retries in session store provider:
  2. NCache session store provider for ASP.NET session caching now has the ability to retry any cache operation if operation fails. Add the following attributes in the NCache session store provider settings:

    • operationRetry="3"
    • operationRetryInterval="3000"
    • ‘OperationRetryIterval’ attributes takes the value in w seconds.
  3. Support for remote clients on a different network:
  4. Operation retries in object cache provider NCache Object Cache provider for .NET4x now has the ability to retry any cache operation if operation fails.

    Add the following entry under the <appSettings> in application config file (app.config or web.config) like:

    • <add key="operationRetries" value="3"/>
    • <add key="operationRetryInterval" value="2000"/> 'operationRetryInterval' is the value in milli seconds
  5. Viewstate grouping page-wise:
  6. A new feature is implemented in ViewState caching, which allows grouping of viewstate of related pages. This will provide more control for viewstate caching. Using this feature it is possible to cache different groups of veiwstate in different caches, or cache veiwstate using different expirations for each group of viewstate.

  7. Maximum VeiwState to cache, per session:
  8. This enhancement in NCache ViewState caching module provides the option to restrict the number of viewstate per page in cache. Add the ‘maxViewStatesPerSession’ attribute in the ‘<settings …> tag under the ‘ncContentOptimization’ tag. This attribute take value in integers.

  9. Delay in Cache Startup Loader:
  10. At Cache start, Cache startup loader is not started instantly. Its start is delayed for 20 seconds after cache start. This delay is configurable by using the following attribute in ‘Alachisoft.NCache.Service.exe.config’ file: Add the following entry under the <appSettings> in NCache service config file like: <add key="NCacheServer.CacheLoaderStartupDelay" value="20"/>
    Default value for this attribute is 20 seconds.

  11. Delay between auto-start caches:
  12. To avoid partial cluster connectivity problems when caches are started simultaneously using auto-start feature, a delay can be introduced. Add the following entry under the <appSettings> in NCache service config file like:
    <add key="NCacheServer.CacheStartDelay" value="3"/>
    Default value for this attribute is ‘3 seconds’.

  13. Suppress IndexNotDefinedException:
  14. ‘IndexNotDefined’ exception is thrown to the client, when it queries an attribute that is not indexed. This problem can occurred easily when NamedTags are used as indexes are created for NamedTags at runtime. Now it is configurable to suppress this exception. Add the following entry under the <appSettings> in NCache service config file like:
    <add key="NCacheServer.DisableIndexNotDefinedException" value="true|false"/>

  15. NCache client apps can consume cache generated events ‘Synchronously’ or ‘Asynchronously’:
  16. Client app can be configured to consume all of the received events ‘Synchronously’ or ‘Asynchronously’. Default event consumption mode for NCache Client is ‘Asynchronous’ but events can be consumed on client side ‘Synchronously’. Add the following entry under the <appSettings> in client application ‘App.config’ file like: <add key="NCacheClient.AsynchronousEventNotification" value="true|false"/> <add key="NCacheClient.NumberofEventProccesingThreads" value="2"/> For synchronous event processing mode, in this example 2 threads are used but it is configurable to adjust the event processing needs according to the client application requirements. Default minimum value is ‘1’ and default maximum value is ‘5’.

  17. More perfmon based counters for cache and cache client:
  18. New Server Side Counter:

    • Response Queue Count: Number of items in response queue, all responses are queued in this queue before actual send.
    • Response Queue Size: Size of response queue specified in bytes. Data size of all the responses in the queue.
    • Event Queue Count: Number of events in event queue.
    • New client side counters:

    • Events Processed/sec: Number of events processed per sec on client.
    • Events Triggered/sec: Number of events triggered and Received by client per second.
    • Average ms/event: Average time taken in single event processing on the client.
  19. Cache clear will fire ItemRemoved events for all registered ContinuousQuery if some data exist in a ContionousQUery resultset:
  20. Now cache clear call will fire the ItemRemoved events for all those keys which exist in a ContinuousQuery result set.

  21. Client cache now manage its own expiry:
  22. If there is a client cache enabled and a lot of items are being expired from the L2 cache then L2 sends item expiry events to client cache (L1 cache) to remove these items from its local store. This hurts the performance of active clients and utilizes high CPU. Now client cache (L1 Cache) will also maintains the expiry of items, and L2 cache will not send the expiry events to L1 cache.

  23. EntitiyFramework caching enhancements:
  24. NCache provided EFCaching module is enhanced for EF query analysis and caching.

  25. Auto Start Bridge on bridge service start:
  26. Now bridge service can be configured to start the specified bridges on service start. To configure a bridge to start automatically when a bridge service (Alachisoft.NCache.Bridge.exe) gets started / restarted. Uncomment the following tag in ‘Alachisoft.NCache.BridgeService.exe.config’ file and provide the bridge name(s) which are configured on current machines, like:
    <add key=" NBridgeServer.AutoStartBridges" value="Bridge-1,Bridge-2"/>

List of Bugs Fixed:

  • 741301 FIX: Connection failover problem in replicated topology, if other server nodes info is not available in ‘client.ncconfig’ file at client machine then client was unable to connect to other server.
  • 741302 FIX: Not all ContinuousQuery notifications are delivered to the client application in case there is a change in an item that falls under a query.
  • 741303 FIX: ContinuousQuery notifications (ItemAdded, ItemUpdated, ItemRemoved) are not fired after clearing the cache.
  • 741304 FIX: Performance degradation in ContinuousQuery with Add, Update & Remove operations. Now Continuous query will be evaluated for each operation ‘Asynchronously’.
  • 741305 FIX: NCache bulk operations that were consuming a lot of NCache process memory due to LOH occupancy and results in timeouts and memory issues. Now NCache divide the large responses into multiple chunks of 512kb and this will help to reduce the memory issues.
  • 741306 FIX: All server information gets removed from ‘client.ncconf’ file on cache client nodes on updating the cache settings if cache is configured to use multiple NIC’s.
  • 741307 FIX: NCache manager was not showing the active directory user after 1000 user count.
  • 741308 FIX: NCache.caches[] API returns only the clustered cache (L2 cache) handle even though it has a client cache (L1 cache).
  • 741309 FIX: ConfigureCacheSecurity command line tool does not work properly, when node level security is enabled.
  • 741310 FIX: EF Caching analysis report is not generated if application exist before analysis time.
  • 741311 FIX: NActivate tool does not work on boxes with 32 cores.
  • 741312 FIX: Bridge: State-transfer started when a server node left the source cache [Active-Passive].
  • 741313 FIX: Bridge: Item version mismatch problem when active-node goes down.
  • 741314 FIX: Bridge: Data replication occurred twice if coordinator-node of the target cache goes down.
  • 741315 FIX: Bridge: Replication stops if the source cluster faces some connection issue due to network.
  • 741316 FIX: Bridge: No replication across the bridge, if cluster caches started before the bridge.
  • 741317 FIX: Bridge: State-transfer initiated from target to source, if coordinator node of the target cache left the cluster.
  • 741318 FIX: Bridge: Target cache is cleared when bridge reconnected or target cache reconnected with the bridge due to connection lost on WAN.
  • 741319 FIX: Bridge: Bridge Queue count is not displayed for bridge active node.
  • 741320 FIX: Bridge: Some other problems related to state-transfer and data mismatch are also fixed for ‘Active-Passive’ and ‘Active-Active’ bridge topologies.

Signup for monthly email newsletter to get latest updates.

© Copyright Alachisoft 2002 - . All rights reserved. NCache is a registered trademark of Diyatech Corp.