I'm having a few question about configurating ehcache for distributed cache replication.
I'm currently configurating cache replication (ehcache 1.4.1) between two servers using manual peer discovery over RMI(see config below).
I'm a bit confused about the output of the log files from the two servers in the following scenario:
step1: ServerA: User adds and object to cache. ServerB writes the following output to its log DEBUG [net.sf.ehcache.distribution.RMICachePeer] - Remote put received. Element is: [ key = 1234, value=net.xzy.AnonymousCookieEntry@83c3cbfe, version=1221936368875, hitCount=0, CreationTime = 1221936356123, LastAccessTime = 0 ]
step2: ServerA: User request the object from step1 which is now in the cache (performing an element.getValue()). ServerB writes the following output to its log DEBUG [net.sf.ehcache.distribution.RMICachePeer] - Remote remove received for key: 1234
step3: ServerA: User request the same object from step1 and get it from cache. ServerB now output the following. DEBUG [net.sf.ehcache.store.MemoryStore] - net.xzy.ANONYMOUS_USER_CACHECache: Cannot remove entry as key 1234 was not found
I don't understand why ServerB in step2 performs a "Remote remove received". Is this the reason it can't find the cache key in step3? My understanding is that both servers should keep the cache objects in sync.