public VersionTag getVersionTag() { VersionStamp stamp = regionEntry.getVersionStamp(); if (stamp != null) { return stamp.asVersionTag(); } return null; }
public VersionTag getVersionTag() { VersionStamp stamp = regionEntry.getVersionStamp(); if (stamp != null) { return stamp.asVersionTag(); } return null; }
protected StringBuilder appendFieldsToString(final StringBuilder sb) { sb.append("key=").append(getKey()).append("; rawValue=") .append(_getValue()); // OFFHEAP _getValue ok: the current toString on OffHeapCachedDeserializable is safe to use without incing refcount. VersionStamp stamp = getVersionStamp(); if (stamp != null) { sb.append("; version=").append(stamp.asVersionTag()+";member="+stamp.getMemberID()); } return sb; }
protected HashMap<String, VersionTag> saveVersionTags(LocalRegion region) { HashMap<String, VersionTag> tagmap = new HashMap<String, VersionTag>(); Iterator entryItr = region.entrySet().iterator(); while (entryItr.hasNext()) { RegionEntry entry = ((NonTXEntry)entryItr.next()).getRegionEntry(); String key = (String)entry.getKey(); VersionTag tag = entry.getVersionStamp().asVersionTag(); tagmap.put(key, tag); } return tagmap; }
@Override protected StringBuilder appendFieldsToString(final StringBuilder sb) { sb.append("key=").append(getRawKey()).append(";rawValue="); // OFFHEAP _getValue ok: the current toString on OffHeapCachedDeserializable // is safe to use without incing refcount. ArrayUtils.objectStringNonRecursive(_getValue(), sb); VersionStamp stamp = getVersionStamp(); if (stamp != null) { sb.append(";version=").append(stamp.asVersionTag()) .append(";member=").append(stamp.getMemberID()); } return super.appendFieldsToString(sb.append(";")); }
/** * returns a map of keys->versiontags for the test region */ public static Map<String, VersionTag> getCCRegionVersions() { Map result = new HashMap(); for (Iterator i=CCRegion.entrySet().iterator(); i.hasNext(); ) { Region.Entry e = (Region.Entry)i.next(); result.put(e.getKey(), CCRegion.getRegionEntry(e.getKey()).getVersionStamp().asVersionTag()); } return result; }
public Object call() throws CacheException { Region region = getRootRegion().getSubregion(regionName); assertEquals(numberOfEntries*2, region.size()); List<VersionTag> versions = new ArrayList<VersionTag>(numberOfEntries*2); RegionMap entries = ((LocalRegion) region).entries; for (Object key : entries.keySet()) { RegionEntry internalRegionEntry = entries.getEntry(key); versions.add(internalRegionEntry.getVersionStamp().asVersionTag()); } return versions; } });
public Object call() throws CacheException { Region region = getRootRegion().getSubregion(regionName); assertEquals(numberOfEntries*2, region.size()); List<String> versions = new ArrayList<String>(numberOfEntries*2); RegionMap entries = ((LocalRegion) region).entries; for (Object key : entries.keySet()) { RegionEntry internalRegionEntry = entries.getEntry(key); VersionTag tag = internalRegionEntry.getVersionStamp().asVersionTag(); tag.setMemberID(null); versions.add(key + " " + tag); } return versions; } });
public Object call() throws CacheException { Region region = getRootRegion().getSubregion(regionName); assertEquals(numberOfEntries*2, region.size()); List<VersionTag> versions = new ArrayList<VersionTag>(numberOfEntries*2); RegionMap entries = ((LocalRegion) region).entries; for (Object key : entries.keySet()) { RegionEntry internalRegionEntry = entries.getEntry(key); VersionTag tag = internalRegionEntry.getVersionStamp().asVersionTag(); getLogWriter().info("Entry version tag on client for " + key + ": " + tag); versions.add(tag); } return versions; } });
public Object call() throws CacheException { Region region = getRootRegion().getSubregion(regionName); assertEquals(numberOfEntries*2, region.size()); List<VersionTag> versions = new ArrayList<VersionTag>(numberOfEntries*2); RegionMap entries = ((LocalRegion) region).entries; for (Object key : entries.keySet()) { RegionEntry internalRegionEntry = entries.getEntry(key); VersionTag tag = internalRegionEntry.getVersionStamp().asVersionTag(); getLogWriter().info("Entry version tag on client for " + key + ": " + tag); versions.add(tag); } return versions; } });
public Object call() throws CacheException { Region region = getRootRegion().getSubregion(regionName); assertEquals(numberOfEntries*2, region.size()); List<VersionTag> versions = new ArrayList<VersionTag>(numberOfEntries*2); RegionMap entries = ((LocalRegion) region).entries; for (Object key : entries.keySet()) { RegionEntry internalRegionEntry = entries.getEntry(key); VersionTag tag = internalRegionEntry.getVersionStamp().asVersionTag(); getLogWriter().info("Entry version tag on client:" + tag); versions.add(tag); } return versions; } });
@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 run2() throws CacheException { Region region = cache.getRegion("repRegion"); Region.Entry entry = ((LocalRegion)region).getEntry("testKey", null, true); RegionEntry re = null; if (entry instanceof EntrySnapshot) { re = ((EntrySnapshot)entry).getRegionEntry(); } else if (entry instanceof NonTXEntry) { re = ((NonTXEntry)entry).getRegionEntry(); } VersionTag tag = re.getVersionStamp().asVersionTag(); assertEquals(2, tag.getDistributedSystemId()); } });
@Override public Object call() throws Exception { LocalRegion r = (LocalRegion)getCache().createRegionFactory( RegionShortcut.REPLICATE).create(regionName); r.put("key", "value"); return r.getRegionEntry("key").getVersionStamp().asVersionTag(); } });
@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 static void verifyTimestampAfterOp(long timestamp, int memberid) { Region region = cache.getRegion("repRegion"); assertEquals(0, region.size()); Region.Entry entry = ((LocalRegion)region).getEntry("testKey", null, true); RegionEntry re = ((EntrySnapshot)entry).getRegionEntry(); assertTrue(re.getValueInVM((LocalRegion) region) instanceof Tombstone); VersionTag tag = re.getVersionStamp().asVersionTag(); assertEquals(timestamp, tag.getVersionTimeStamp()); assertEquals(memberid, tag.getDistributedSystemId()); } }
public static long getVersionTimestampAfterOp() { Region region = cache.getRegion("repRegion"); assertEquals(1, region.size()); region.destroy("testKey"); Region.Entry entry = ((LocalRegion)region).getEntry("testKey", null, true); 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(); return tag.getVersionTimeStamp(); }
protected void copyRecoveredEntry(RegionEntry oldRe, RegionEntry newRe) { if(newRe.getVersionStamp() != null) { newRe.getVersionStamp().setMemberID(oldRe.getVersionStamp().getMemberID()); newRe.getVersionStamp().setVersions(oldRe.getVersionStamp().asVersionTag()); } if (newRe instanceof AbstractOplogDiskRegionEntry) { ((AbstractOplogDiskRegionEntry)newRe).setDiskId(oldRe); _getOwner().getDiskRegion().replaceIncompatibleEntry((DiskEntry) oldRe, (DiskEntry) newRe); } _getMap().put(newRe.getKey(), newRe); }