-
Type:
Suggestion
-
Resolution: Fixed
-
Component/s: None
Every time Hibernate loads objects from the database it tries to put them into the cache. For example when Hibernate lazy loads collections it might end up loading objects from the database that are already in the cache anyway. This leads to a big overhead in a clustered environment, because all those puts need to be distributed across the cluster. But we can avoid the put() if we check with a lockless get() if the object is already in the cache. If it is there is no need update it because updates are not handled by calling put(), but by calling afterInsert() or afterUpdate() on the CoherenceCacheStrategy.