Hi, I found the following issues with _EmbeddedCacheManager.removeCache()_ while I was helping the LEADS devs. The method removes the cache from all the nodes in the cluster.
#1 It has different behaviour in the invoker node. In the invoked node, it removes the configuration from _configurationOverrides_ field and from _cacheDependencyGraph_. In the remaining node, it doesn't. To think: it should remove from _cacheDependencyGraph_ in all the nodes but keep the configuration. #2 It tries to remove the cache remotely before locally. It could be done in parallel and it has a small issue: if a timeout occurs, it never tries to remove the cache locally. To think: can we send the request asynchronously? #3 When passivation is enabled, it first invoke _PassivationManager.passivateAll()_ and then _PersistenceManager.stop()_. The former will copy all the data in memory to the cache store and the later will clear the cache store. We can skip the passivation. To think: create a _PassivationManager.skipPassivationOnStop()_ (similar to _PersistenceManager.setClearOnStop()_). Comments are welcome. Cheers, Pedro _______________________________________________ infinispan-dev mailing list [email protected] https://lists.jboss.org/mailman/listinfo/infinispan-dev
