A soft-locked cache entry was expired by the underlying Ehcache

Joe picture Joe · Apr 15, 2011 · Viewed 9.8k times · Source

Hibernate 3.3.x, ehcache 2.2.x

The following error occurs, when I try to publish a lots of users in a single go. Any idea on why this would happen and how to rectify this? Is there a way to disable this cache prior to bulk loading of users, if so how should I do that?

17:17:50,140 WARN [AbstractReadWriteEhcacheAccessStrategy] Cache
persistence.unit:unitName=my.ear/my-ejb-1.0.0.jar#my.com.mycompany.User.phones Key com.mycompany.User.phones#9915 Lockable : null

A soft-locked cache entry was expired by the underlying Ehcache.
If this happens regularly you should consider increasing the cache timeouts and/or capacity limits

EDIT1:

This error happens when I try to bulk load a lot of users into the database via JPA calls. I don't shutdown the cache manager via a tear down hook.

Answer

Binil Thomas picture Binil Thomas · May 6, 2011

From the description it looks like the second-level cache for your entities are getting full, and some of them are getting evicted from the underlying ehcache prematurely. Do you flush & clear the hibernate Session periodically during your bulk-insert, as mentioned in the documentation?