Live Upgrade NCache Version
NCache provides the feature of Live Upgrading from previous versions of NCache (all versions prior to 4.6) to NCache 4.6 with negligible data loss. Live Upgrade significantly reduces the delay in your services caused by an upgrade manually. Using Live Upgrade, you can replicate the data of your currently running cache to an NCache 4.6 cache using a Bridge in between while the caches continue to run.
Important
The previous version cache is considered as the source cache, and NCache 4.6 is considered as the target cache.
Since the data replication is asynchronous, all clients connected to the source cache(s) get an impression that the operations are being performed on the source cache while a complete copy is being made to the target cache(s) seamlessly. Meanwhile, the source cache configuration remains fully functional and unaffected by the upgrade.
In order to upgrade your cache:
Create a target cache with the same name and configuration as the source cache on NCache 4.6. Please refer to the Creating Caches section for step by step illustration of the process.
Create a new Bridge as explained in Creating Clustered Bridge for WAN Replication.
To this bridge, you need to add running source caches. Since the previous versions did not support adding running caches to the bridge, you need to apply a patch of the previous version to the cache.
Keep in mind that this source cache has to be a two-node cache. This is because the patch will be applied to one of the nodes which will then replicate the data which is stored in the other node.
Right click on one of nodes of the cache and click** Stop.**
Apply the patch which will allow the cache to be added (while running) to the bridge.
After applying the patch, start the node and add it to the bridge.
Note
You can add only one running cache at a time.
- On the bridge node, provide IP of the target cache in client.ncconf:
<configuration>
<cache ...>
<server name="20.200.20.113"/>
</cache>
</configuration>
Important
Make sure the source and target caches are in running state before proceeding with this step.
Right click on the bridge name and select Start option in the right click context menu. State transfer will begin automatically.
You can monitor the Performance Counters for state transfer using the Statistics window:
When the state transfer counter is no longer published it marks the end of the whole process and any connected clients should be stopped.
Change the IP of clients in client.ncconf to the IP of the target cache. By doing so, you are effectively rerouting your clients to the target cache (NCache 4.6).
Restart the clients. All future operations by the clients will now be performed on NCache 4.6.
There might still be negligible pending activity of the source cache taking place which was requested during the state transfer, like fetch operations. It is advisable to let these remaining operations replicate to the target cache completely so that data loss is avoided.
Warning
Make sure that when the bridge has no data left in the queue or when the operations have been fully replicated, only then you can proceed to remove the cache and bridge.