[infinispan-dev] Cache migration (rolling upgrades, dump/restore, etc)

Tristan Tarrant ttarrant at redhat.com
Wed May 17 10:56:25 EDT 2017

Hey all,

Infinispan has historically had two ways of performing live migration 
between two clusters, via Hot Rod and via REST. We do not currently 
provide an offline migration, although we do have a cache store 
migration tool.

Gustavo has recently made several changes to the Hot Rod implementation 
which have improved it greatly. The REST implementation is still not 
robust enough, but I think we can abandon it and just focus on the Hot 
Rod one ever for servers using REST.

The following is a list of stuff, mostly compiled by Gustavo, that needs 
to be done to make everything smooth and robust:

1) Need a way to automate client redirection to the new cluster. I've 
often referred to this as L4 client intelligence, which can also be used 
for server-assisted cross-site failover.
2) Need a way to "rollback" the process in case of failures during the 
migration: redirecting the clients back to the original cluster without 
data loss. This would use the above L4 strategy.
3) Expose metrics and progress
4) Expose a way to cancel the process
5) Expose a container-wide migration process which can be applied to all 
caches instead of one cache at a time.
6) The migration process should also take care of automatically 
configuring the endpoints / remote cache stores at the beginning of the 
process and removing any changes at the end.
6) Provide a future-proof format for the entries
7) Implement dump and restore capabilities which can export the contents 
of a cluster to a file (compressed, encrypted, etc) or a collection of 
files (one per cache).

Anything else ?


Tristan Tarrant
Infinispan Lead
JBoss, a division of Red Hat

More information about the infinispan-dev mailing list