-
Bug
-
Resolution: Done
-
Major
-
6.0.0.Final
-
None
There is a readOnly optimization that Infinispan does to make sure we don't do a 2PC when there is no data to update. However the code for this does
public boolean isReadOnly() { return (modifications == null || modifications.isEmpty()) && (lookedUpEntries == null || lookedUpEntries.isEmpty()); }
For repeatable read we always add a value to lookedUpEntries so this optimization never works that isolation level.
Looking closer it seems we do a 1PC when it is readOnly to clean up values, so there shouldn't be a need to care about lookedUpEntries (my guess is this was done as a way to test for locks).