public final boolean hasValidVersion() { VersionStamp stamp = (VersionStamp)this; boolean has = stamp.getRegionVersion() != 0 || stamp.getEntryVersion() != 0; return has; }
public boolean hasValidVersion() { VersionStamp stamp = (VersionStamp)this; boolean has = stamp.getRegionVersion() != 0 || stamp.getEntryVersion() != 0; return has; }
byte[] serializeVersionTag(VersionStamp stamp) throws IOException { int entryVersion = stamp.getEntryVersion(); long regionVersion = stamp.getRegionVersion(); VersionSource versionMember = stamp.getMemberID(); long timestamp = stamp.getVersionTimeStamp(); int dsId = stamp.getDistributedSystemId(); return serializeVersionTag(entryVersion, regionVersion, versionMember, timestamp, dsId); }
byte[] serializeVersionTag(VersionStamp stamp) throws IOException { int entryVersion = stamp.getEntryVersion(); long regionVersion = stamp.getRegionVersion(); VersionSource versionMember = stamp.getMemberID(); long timestamp = stamp.getVersionTimeStamp(); int dsId = stamp.getDistributedSystemId(); return serializeVersionTag(entryVersion, regionVersion, versionMember, timestamp, dsId); }
id = myId; if (!remoteRVV.contains(id, stamp.getRegionVersion())) { remoteRVV.recordVersion(id, stamp.getRegionVersion()); region.getFullPath(), mapEntry.getKey(), stamp.getMemberID(), stamp.getRegionVersion());
rvv.recordVersion(id, stamp.getRegionVersion());
id = myId; if (!remoteRVV.contains(id, stamp.getRegionVersion())) { remoteRVV.recordVersion(id, stamp.getRegionVersion(), null); +mapEntry.getKeyCopy()+",member="+stamp.getMemberID()+",region version="+stamp.getRegionVersion());
rvv.recordVersion(id, stamp.getRegionVersion(), null);
public void handleRegionEntry(RegionEntry re) { DiskEntry de = (DiskEntry)re; synchronized (de) { DiskId id = de.getDiskId(); if (id != null && re.isTombstone()) { VersionStamp stamp = re.getVersionStamp(); if(getRegionVersionVector().isTombstoneTooOld(stamp.getMemberID(), stamp.getRegionVersion())) { drs.destroyRecoveredEntry(de.getKey()); } } } } });
public void handleRegionEntry(RegionEntry re) { DiskEntry de = (DiskEntry)re; synchronized (de) { DiskId id = de.getDiskId(); if (id != null && re.isTombstone()) { VersionStamp stamp = re.getVersionStamp(); if(getRegionVersionVector().isTombstoneTooOld(stamp.getMemberID(), stamp.getRegionVersion())) { drs.destroyRecoveredEntry(de.getKeyCopy()); } } } } });
private boolean shouldClear(LocalRegion r, RegionVersionVector rvv, AsyncDiskEntry ade) { if (ade.region != r) { return false; } // If no RVV, remove all of the async items for this region. if (rvv == null) { return true; } // If we are clearing based on an RVV, only remove // entries contained in the RVV if (ade.versionOnly) { return rvv.contains(ade.tag.getMemberID(), ade.tag.getRegionVersion()); } else { VersionStamp stamp = ade.de.getVersionStamp(); VersionSource member = stamp.getMemberID(); if (member == null) { // For overflow only regions, the version member may be null // because that represents the local internal distributed member member = r.getVersionMember(); } return rvv.contains(member, stamp.getRegionVersion()); } }
private boolean shouldClear(LocalRegion r, RegionVersionVector rvv, AsyncDiskEntry ade) { if (ade.region != r) { return false; } // If no RVV, remove all of the async items for this region. if (rvv == null) { return true; } // If we are clearing based on an RVV, only remove // entries contained in the RVV if (ade.versionOnly) { return rvv.contains(ade.tag.getMemberID(), ade.tag.getRegionVersion()); } else { VersionStamp stamp = ade.de.getVersionStamp(); VersionSource member = stamp.getMemberID(); if (member == null) { // For overflow only regions, the version member may be null // because that represents the local internal distributed member member = r.getVersionMember(); } return rvv.contains(member, stamp.getRegionVersion()); } }
if (state.isVersionInSnapshot(region, id, stamp.getRegionVersion())) { if (TXStateProxy.LOG_FINEST) { logger.info(LocalizedStrings.DEBUG, "getLocalEntry: for region " + region.getFullPath() + " RegionEntry(" + entry + ") with version " + stamp .getRegionVersion() + " id: " + id + " , returning true."); logger.info(LocalizedStrings.DEBUG, "getLocalEntry: for region " + region.getFullPath() + " RegionEntry(" + entry + ") with version " + stamp .getRegionVersion() + " id: " + id + " , returning false.");
re.getVersionStamp().getRegionVersion())) { re = null;
id = region.getVersionMember(); if (!rvv.contains(id, getVersionStamp().getRegionVersion())) { entryOK = true;
id = myId; if (rvv.contains(id, re.getVersionStamp().getRegionVersion())) { if (logger.finerEnabled()) { logger.finer("region clear op is removing " + re.getKeyCopy()
if(tag != null && stamp != null && (stamp.getMemberID() != tag.getMemberID() || stamp.getRegionVersion() != tag.getRegionVersion())) { DiskEntry.Helper.doAsyncFlush(tag, region);
if(tag != null && stamp != null && (stamp.getMemberID() != tag.getMemberID() || stamp.getRegionVersion() != tag.getRegionVersion())) { DiskEntry.Helper.doAsyncFlush(tag, region);
if(tag != null && stamp != null && (stamp.getMemberID() != tag.getMemberID() || stamp.getRegionVersion() != tag.getRegionVersion())) { DiskEntry.Helper.doAsyncFlush(tag, region);
re.getVersionStamp().getRegionVersion())) { re = null;