public int getEntryVersion() { if (this.versionTag != null) { return this.versionTag.getEntryVersion(); } return 0; }
public int getEntryVersion() { if (this.versionTag != null) { return this.versionTag.getEntryVersion(); } return 0; }
@Override public String toString() { StringBuilder sb = new StringBuilder(50); sb.append("(").append(getKey()).append(","). append(getOldValue()); if (this.bucketId > 0) { sb.append(", b").append(this.bucketId); } if (versionTag != null) { sb.append(",v").append(versionTag.getEntryVersion()).append(",rv="+versionTag.getRegionVersion()); } if (filterRouting != null) { sb.append(", ").append(filterRouting); } sb.append(")"); return sb.toString(); }
protected void compareVersionTags(HashMap<String, VersionTag> map1, HashMap<String, VersionTag> map2) { assertEquals(map1.size(), map2.size()); for (String key: map1.keySet()) { VersionTag tag1 = map1.get(key); VersionTag tag2 = map2.get(key); assertEquals(tag1.getEntryVersion(), tag2.getEntryVersion()); assertEquals(tag1.getRegionVersion(), tag2.getRegionVersion()); assertEquals(tag1.getMemberID(), tag2.getMemberID()); } }
@Override public Object call() throws Exception { Region n = getCache().getRegion(regionNameNormal); VersionTag localTag = ((LocalRegion)n).getRegionEntry("key") .getVersionStamp().asVersionTag(); assertEquals(tag.getEntryVersion(), localTag.getEntryVersion()); assertEquals(tag.getRegionVersion(), localTag.getRegionVersion()); return null; } });
@Override public void run() { //if the observer was triggered, it would have cleared itself assertNull(DistributionMessageObserver.getInstance()); Region region = getCache().getRegion("region"); VersionTag tag = ((LocalRegion)region).getVersionTag(0); assertEquals(2, tag.getEntryVersion()); } });
@Override public void run() { //if the observer was triggered, it would have cleared itself assertNull(DistributionMessageObserver.getInstance()); Region region = getCache().getRegion("region"); VersionTag tag = ((LocalRegion)region).getVersionTag(0); assertEquals(2, tag.getEntryVersion()); } });
byte[] serializeVersionTag(VersionTag tag) throws IOException { int entryVersion = tag.getEntryVersion(); long regionVersion = tag.getRegionVersion(); VersionSource versionMember = tag.getMemberID(); long timestamp = tag.getVersionTimeStamp(); int dsId = tag.getDistributedSystemId(); return serializeVersionTag(entryVersion, regionVersion, versionMember, timestamp, dsId); }
byte[] serializeVersionTag(VersionTag tag) throws IOException { int entryVersion = tag.getEntryVersion(); long regionVersion = tag.getRegionVersion(); VersionSource versionMember = tag.getMemberID(); long timestamp = tag.getVersionTimeStamp(); int dsId = tag.getDistributedSystemId(); return serializeVersionTag(entryVersion, regionVersion, versionMember, timestamp, dsId); }
public void run() { // make the entry for cckey0 a tombstone in this VM and set its modification time to be older // than the tombstone GC interval. This means it could be in the process of being reaped by // distributed-GC RegionEntry entry = CCRegion.getRegionEntry("cckey0"); VersionTag tag = entry.getVersionStamp().asVersionTag(); assertTrue(tag.getEntryVersion() > 1); tag.setVersionTimeStamp(System.currentTimeMillis() - TombstoneService.REPLICATED_TOMBSTONE_TIMEOUT - 1000); entry.getVersionStamp().setVersionTimeStamp(tag.getVersionTimeStamp()); try { entry.makeTombstone(CCRegion, tag); } catch (RegionClearedException e) { fail("region was mysteriously cleared during unit testing", e); } } });
public void run() { // make the entry for cckey0 a tombstone in this VM and set its // modification time to be older than the tombstone GC interval. This // means it could be in the process of being reaped by distributed-GC RegionEntry entry = CCRegion.getRegionEntry("cckey0"); VersionTag tag = entry.getVersionStamp().asVersionTag(); assertTrue(tag.getEntryVersion() > 1); tag.setVersionTimeStamp(System.currentTimeMillis() - TombstoneService.REPLICATED_TOMBSTONE_TIMEOUT - 1000); entry.getVersionStamp().setVersionTimeStamp(tag.getVersionTimeStamp()); try { entry.makeTombstone(CCRegion, tag); } catch (RegionClearedException e) { fail("region was mysteriously cleared during unit testing", e); } } });
@Override public void run2() throws CacheException { Cache cache = getCache(); Region region = cache.getRegion("prRegion"); Region.Entry entry = ((PartitionedRegion)region).getEntry("testKey", null, true /*Entry is destroyed*/); RegionEntry re = ((EntrySnapshot)entry).getRegionEntry(); getLogWriter().fine("RegionEntry for testKey: " + re.getKey() + " " + re.getValueInVM((LocalRegion) region)); assertTrue(re.getValueInVM((LocalRegion) region) instanceof Tombstone); VersionTag tag = re.getVersionStamp().asVersionTag(); assertEquals(3 /*Two puts and a Destroy*/, tag.getEntryVersion()); } });
public void run() { Cache cache = getCache(); LocalRegion region = (LocalRegion) cache.getRegion(REGION_NAME); region.put(0, "value3"); RegionEntry entry = region.getRegionEntry(0); entry = region.getRegionEntry(0); //Sneak in and change the version number for an entry to generate //a conflict. VersionTag tag = entry.getVersionStamp().asVersionTag(); tag.setEntryVersion(tag.getEntryVersion() - 2); entry.getVersionStamp().setVersions(tag); } };
public void run() { Cache cache = getCache(); LocalRegion region = (LocalRegion) cache.getRegion(REGION_NAME); region.put(0, "value3"); RegionEntry entry = region.getRegionEntry(0); entry = region.getRegionEntry(0); //Sneak in and change the version number for an entry to generate //a conflict. VersionTag tag = entry.getVersionStamp().asVersionTag(); tag.setEntryVersion(tag.getEntryVersion() - 2); entry.getVersionStamp().setVersions(tag); } };
public final void setVersions(VersionTag tag) { this.memberID = tag.getMemberID(); int eVersion = tag.getEntryVersion(); this.entryVersionLowBytes = (short)(eVersion & 0xffff); this.entryVersionHighByte = (byte)((eVersion & 0xff0000) >> 16); this.regionVersionHighBytes = tag.getRegionVersionHighBytes(); this.regionVersionLowBytes = tag.getRegionVersionLowBytes(); if (!(tag.isGatewayTag()) && this.distributedSystemId == tag.getDistributedSystemId()) { if (getVersionTimeStamp() <= tag.getVersionTimeStamp()) { setVersionTimeStamp(tag.getVersionTimeStamp()); } else { tag.setVersionTimeStamp(getVersionTimeStamp()); } } else { setVersionTimeStamp(tag.getVersionTimeStamp()); } this.distributedSystemId = (byte)(tag.getDistributedSystemId() & 0xff); } public final void setMemberID(VersionSource memberID) {
public final void setVersions(VersionTag tag) { this.memberID = tag.getMemberID(); int eVersion = tag.getEntryVersion(); this.entryVersionLowBytes = (short)(eVersion & 0xffff); this.entryVersionHighByte = (byte)((eVersion & 0xff0000) >> 16); this.regionVersionHighBytes = tag.getRegionVersionHighBytes(); this.regionVersionLowBytes = tag.getRegionVersionLowBytes(); if (!(tag.isGatewayTag()) && this.distributedSystemId == tag.getDistributedSystemId()) { if (getVersionTimeStamp() <= tag.getVersionTimeStamp()) { setVersionTimeStamp(tag.getVersionTimeStamp()); } else { tag.setVersionTimeStamp(getVersionTimeStamp()); } } else { setVersionTimeStamp(tag.getVersionTimeStamp()); } this.distributedSystemId = (byte)(tag.getDistributedSystemId() & 0xff); } public final void setMemberID(VersionSource memberID) {
public final void setVersions(VersionTag tag) { this.memberID = tag.getMemberID(); int eVersion = tag.getEntryVersion(); this.entryVersionLowBytes = (short)(eVersion & 0xffff); this.entryVersionHighByte = (byte)((eVersion & 0xff0000) >> 16); this.regionVersionHighBytes = tag.getRegionVersionHighBytes(); this.regionVersionLowBytes = tag.getRegionVersionLowBytes(); if (!(tag.isGatewayTag()) && this.distributedSystemId == tag.getDistributedSystemId()) { if (getVersionTimeStamp() <= tag.getVersionTimeStamp()) { setVersionTimeStamp(tag.getVersionTimeStamp()); } else { tag.setVersionTimeStamp(getVersionTimeStamp()); } } else { setVersionTimeStamp(tag.getVersionTimeStamp()); } this.distributedSystemId = (byte)(tag.getDistributedSystemId() & 0xff); } public final void setMemberID(VersionSource memberID) {
public void setVersions(VersionTag tag) { this.memberID = tag.getMemberID(); int eVersion = tag.getEntryVersion(); this.entryVersionLowBytes = (short)(eVersion & 0xffff); this.entryVersionHighByte = (byte)((eVersion & 0xff0000) >> 16); this.regionVersionHighBytes = tag.getRegionVersionHighBytes(); this.regionVersionLowBytes = tag.getRegionVersionLowBytes(); if (!(tag.isGatewayTag()) && this.distributedSystemId == tag.getDistributedSystemId()) { if (getVersionTimeStamp() <= tag.getVersionTimeStamp()) { setVersionTimeStamp(tag.getVersionTimeStamp()); } else { tag.setVersionTimeStamp(getVersionTimeStamp()); } } else { setVersionTimeStamp(tag.getVersionTimeStamp()); } this.distributedSystemId = (byte)(tag.getDistributedSystemId() & 0xff); } public void setMemberID(VersionSource memberID) {
public void setVersions(VersionTag tag) { this.memberID = tag.getMemberID(); int eVersion = tag.getEntryVersion(); this.entryVersionLowBytes = (short)(eVersion & 0xffff); this.entryVersionHighByte = (byte)((eVersion & 0xff0000) >> 16); this.regionVersionHighBytes = tag.getRegionVersionHighBytes(); this.regionVersionLowBytes = tag.getRegionVersionLowBytes(); if (!(tag.isGatewayTag()) && this.distributedSystemId == tag.getDistributedSystemId()) { if (getVersionTimeStamp() <= tag.getVersionTimeStamp()) { setVersionTimeStamp(tag.getVersionTimeStamp()); } else { tag.setVersionTimeStamp(getVersionTimeStamp()); } } else { setVersionTimeStamp(tag.getVersionTimeStamp()); } this.distributedSystemId = (byte)(tag.getDistributedSystemId() & 0xff); } public void setMemberID(VersionSource memberID) {
public void setVersions(VersionTag tag) { this.memberID = tag.getMemberID(); int eVersion = tag.getEntryVersion(); this.entryVersionLowBytes = (short)(eVersion & 0xffff); this.entryVersionHighByte = (byte)((eVersion & 0xff0000) >> 16); this.regionVersionHighBytes = tag.getRegionVersionHighBytes(); this.regionVersionLowBytes = tag.getRegionVersionLowBytes(); if (!(tag.isGatewayTag()) && this.distributedSystemId == tag.getDistributedSystemId()) { if (getVersionTimeStamp() <= tag.getVersionTimeStamp()) { setVersionTimeStamp(tag.getVersionTimeStamp()); } else { tag.setVersionTimeStamp(getVersionTimeStamp()); } } else { setVersionTimeStamp(tag.getVersionTimeStamp()); } this.distributedSystemId = (byte)(tag.getDistributedSystemId() & 0xff); } public void setMemberID(VersionSource memberID) {