Graceful Node Down
With client operations, there are many operations that are performed in the background of cluster cache. When any server node in cluster cache is stopped, all those background operations are lost which results in data loss. To avoid operation loss, you should always gracefully down any node. Server nodes are not stopped until all background operations are completed or graceful down time out is elapsed.
If any task takes a longer time than its shut down timeout like in write-behind, database transactions can take longer than the expected time. Then the count of remaining operations will be written in cache server logs. But those operations will be lost.
Configurable time outs: Shutdown timeouts are configurable in cache server configuration file found in NCache installation as follows:
- .NET: Alachsioft.NCache.Service.exe.config located in %NCHOME%/bin/service
- .NET Core Windows: Alachsioft.NCache.Service.dll.config located in %NCHOME%/bin/service
- .NET Core Linux: Alachsioft.NCache.Daemon.dll.config located in /opt/ncache/bin/service
Use these tags to configure shutdown timeouts:
CacheServer.GracefullShutdownTimeout:Total timeout of graceful shutdown. Default is 180 seconds.
CacheServer.BlockingActivityTimeout:Timeout of wait for operations completion which are started before blocking activity. Default is 3 seconds.