To clarify further...
Within txn here there are calls to:
1) cacheAccess.lockRegion()
2) cacheAccess.removeAll()
In after-completion phase there is a call to:
3) cacheAccess.unlockRegion(lock-from-#1)
A transactional cache would not care about #1 nor #3...
On Tue, 2009-08-18 at 13:25 -0500, Steve Ebersole wrote:
On Tue, 2009-08-18 at 16:50 +0200, Galder Zamarreno wrote:
>
> This change of behaivour is making Infinispan cache provider tests that
> do bulk modifications to fail. The reason it fails is because Hibernate
> has a javax.transaction.Synchronization implementation called
> CacheSynchronization that in it's afterCompletion(), it leads to call
> BulkOperationCleanupAction.evictEntityRegions() which clears the cache
> for the affected entities. Now, since the tx status is COMMITTED, the
> test fails.
This is no longer accurate. There was a bug in how
BulkOperationCleanupAction worked because it was still using the older
Hibrnate cache SPIs. See
http://opensource.atlassian.com/projects/hibernate/browse/HHH-4034
--
Steve Ebersole <steve(a)hibernate.org>
Hibernate.org