Infinispan is of course a transactional cache. If you were using an EHCache version prior to 2.0, it was not transactional:
Quote:
The TRANSACTIONAL strategy is intended for use in an environment utilizing the Java Transaction API (JTA) to manage transactions across a number of XA resources. This strategy guarantees that a cache remains in sync with other resources, such as databases and queues.
The TRANSACTIONAL strategy is supported in Ehcache 2.0 and higher.
See: Terracotta Distributed Ehcache for Hibernate ReferenceWhat caching strategy are you using for your entities? E.g.
Code:
@Cache(usage = CacheConcurrencyStrategy.NONSTRICT_READ_WRITE)
or
Code:
@Cache(usage = CacheConcurrencyStrategy.TRANSACTIONAL)
?