[
https://jira.jboss.org/browse/ISPN-787?page=com.atlassian.jira.plugin.sys...
]
Paul Ferraro commented on ISPN-787:
-----------------------------------
Digging into this a little further, I think I see where the discrepancy is:
in org.infinispan.container.EntryFactoryImpl.createWrappedEntry(...) returns a
NullMarkerEntry for the REPEATABLE_READ case, but a null for the READ_COMMITTED case.
However, org.infinispan.interceptors.DistributionInterceptor.needsRemoteGet(...) will not
returns true unless the entry is null, or entry.isLockPlaceholder() is true (for which
NullMarkerEntry returns false).
Perhaps entry.isNull() should be added to this criteria?
Cache.get(...) does not go remote if DIST + batch + REPEATABLE_READ
-------------------------------------------------------------------
Key: ISPN-787
URL:
https://jira.jboss.org/browse/ISPN-787
Project: Infinispan
Issue Type: Bug
Components: Distributed Cache
Affects Versions: 4.2.0.BETA1
Reporter: Paul Ferraro
Assignee: Manik Surtani
Priority: Critical
Attachments: ISPN787TestCase.java
The attached test reproduces the problem.
* Create 3 DIST mode caches from 3 clustered managers
* Do a cache put
* If batching is enabled, and isolation level is REPEATABLE_READ, cache get only returns
the correct value for those nodes to which the key hashes
* The same cache get succeeds if isolation level is dropped to READ_COMMITTED or if get
is not done within a batch
--
This message is automatically generated by JIRA.
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira