I'm using Infinispan 6.0.0 with Hibernate 4.3.6.
My config is:
<!-- Default configuration is appropriate for entity/collection caching. -->
<namedCache name="entity">
<clustering mode="invalidation">
<stateTransfer fetchInMemoryState="false" timeout="20000"/>
<sync replTimeout="20000"/>
</clustering>
<locking isolationLevel="READ_COMMITTED" concurrencyLevel="1000"
lockAcquisitionTimeout="15000" useLockStriping="false"/>
<!-- Eviction configuration. WakeupInterval defines how often the eviction thread runs, in milliseconds.
0 means the eviction thread will never run. A separate executor is used for eviction in each cache. -->
<eviction maxEntries="${infinispan.maxEntries:10000}" strategy="LRU"/>
<expiration maxIdle="${infinispan.maxIdle:-1}" wakeUpInterval="5000"/>
<!-- <transaction transactionMode="TRANSACTIONAL" autoCommit="false"
lockingMode="OPTIMISTIC"/> -->
</namedCache>
The system properties are not set, so the defaults are applied (10.000, -1).
As I understand it, eviction should never happen when maxEntries is not reached.
For some of my entities the cache entries are deleted very soon after they where added to the cache. The add was just a query which returns alot of these objects (< 1000). These objects are not changed then (so no invalidation should take place).
So what causes infinispan to delete the objects from the cache?
Thank you