How is TX1 reading the entity? Via an EntityManager.find() or are you using a query that
amounts to the same thing?
The logging like this:
| 2009-04-01 13:51:50,515 DEBUG [org.jboss.cache.invocation.CacheInvocationDelegate]
(WorkerThread#0[127.0.0.1:4967]) putForExternalRead() called with Fqn
/persistence.unit:unitName=SPECjAppServer.ear/corp.jar#corp-persistence/org/spec/jappserver/corp/customerinventoryent/ejb/CCustomerInventory/ENTITY/org.spec.jappserver.corp.customerinventoryent.ejb.CCustomerInventory#56510
and this node already exists. This method is hence a no op.
tells me Hibernate is trying to cache an entity that is already cached. It would only do
that if it didn't try to read the cache in the first place. So I'm trying to
understand why it didn't read the cache. (The non-read of the cache by TX1 is why the
TX2 write doesn't block on a read lock.)
View the original post :
http://www.jboss.org/index.html?module=bb&op=viewtopic&p=4222750#...
Reply to the post :
http://www.jboss.org/index.html?module=bb&op=posting&mode=reply&a...