]
William Burns commented on ISPN-5088:
-------------------------------------
Testing this out, this never worked in ISPN 6.0 either (I copied the test over to
FineGrained and it failed just the same). So I am a bit confused as to how you had this
working before. However the issue is that since we are using a transaction it only sends
the delta update instead of sending the entire object anew after the clear.
Deleted entries from (FineGrained)AtomicMap reappear in subsequent
transaction
------------------------------------------------------------------------------
Key: ISPN-5088
URL:
https://issues.jboss.org/browse/ISPN-5088
Project: Infinispan
Issue Type: Bug
Components: Core
Affects Versions: 7.0.2.Final
Reporter: Sanne Grinovero
Assignee: William Burns
Priority: Critical
Labels: for_OGM
Attachments: Testcase-ISPN-5088.patch
After a {{FineGrainedAtomicMap}} containing some data is deleted in a transaction, but
then in the same transaction it's re-created, the next transaction will be able to
read the original data which it contained.
Some pseudocode:
{code}tx1.start();
am = AtomicMapLookup.getFineGrainedAtomicMap( cache, cacheKey, true );
am.put(k1, v1);
tx1.commit()
tx2.start();
am = AtomicMapLookup.getFineGrainedAtomicMap( cache, cacheKey, true );
am.put(k3, v3);
AtomicMapLookup.removeAtomicMap( cache, cacheKey );
am = AtomicMapLookup.getFineGrainedAtomicMap( cache, cacheKey, true );
am.put(k2,v2);
tx2.commit()
tx3.start();
am = AtomicMapLookup.getFineGrainedAtomicMap( cache, cacheKey, true );
am.contains(k1) == false; // FAILS!
tx3.commit();{code}
Also applies apparently to a normal AtomicMap if using DIST_SYNC.
I'm attaching a full test, which results in:
{noformat}
Failed tests:
RepeatableReadFineGrainedAtomicMapAPITest>BaseAtomicHashMapAPITest.testInsertDeleteInsertCycle:596
null
FineGrainedAtomicMapAPITest>BaseAtomicHashMapAPITest.testInsertDeleteInsertCycle:596
null
DistFineGrainedAtomicMapAPITest>BaseAtomicHashMapAPITest.testInsertDeleteInsertCycle:596
null
DistRepeatableReadFineGrainedAtomicMapAPITest>BaseAtomicHashMapAPITest.testInsertDeleteInsertCycle:596
null
DistRepeatableReadAtomicMapAPITest>BaseAtomicHashMapAPITest.testInsertDeleteInsertCycle:596
null
DistAtomicMapAPITest>BaseAtomicHashMapAPITest.testInsertDeleteInsertCycle:596 null
Tests run: 5636, Failures: 6, Errors: 0, Skipped: 0
{noformat}