public void endDestroyDataStorage(LocalRegion region, DiskRegion dr) { try { clear(region, dr, null); dr.resetRVV(); dr.setRVVTrusted(false); dr.writeRVV(null, null); // just persist the empty rvv with trust=false } catch (RegionDestroyedException rde) { // ignore a RegionDestroyedException at this stage } if (this.initFile != null && dr.isBackup()) { this.initFile.endDestroyDataStorage(dr); } }
protected void saveReceivedRVV(RegionVersionVector rvv) { assert rvv != null; // Make sure the RVV is at least as current as // the provider's was when the GII began. This ensures that a // concurrent clear() doesn't prevent the new region's RVV from being // initialized and that any vector entries that are no longer represented // by stamps in the region are not lost if (logger.isTraceEnabled(LogMarker.GII)) { logger.trace(LogMarker.GII, "Applying received version vector {} to {}", rvv.fullToString(), region.getName()); } //TODO - RVV - Our current RVV might reflect some operations //that are concurrent updates. We want to keep those updates. However //it might also reflect things that we recovered from disk that we are going //to remove. We'll need to remove those from the RVV somehow. region.getVersionVector().recordVersions(rvv); if(region.getDataPolicy().withPersistence()) { region.getDiskRegion().writeRVV(region, false); region.getDiskRegion().writeRVVGC(region); } if (logger.isTraceEnabled(LogMarker.GII)) { logger.trace(LogMarker.GII, "version vector is now {}", region.getVersionVector().fullToString()); } }
protected void saveReceivedRVV(RegionVersionVector rvv) { assert rvv != null; // Make sure the RVV is at least as current as // the provider's was when the GII began. This ensures that a // concurrent clear() doesn't prevent the new region's RVV from being // initialized and that any vector entries that are no longer represented // by stamps in the region are not lost if (TRACE_GII) { region.getLogWriterI18n().info(LocalizedStrings.DEBUG, "Applying received version vector "+rvv.fullToString()+ " to " + region.getName()); } //TODO - RVV - Our current RVV might reflect some operations //that are concurrent updates. We want to keep those updates. However //it might also reflect things that we recovered from disk that we are going //to remove. We'll need to remove those from the RVV somehow. region.getVersionVector().recordVersions(rvv, null); if(region.getDataPolicy().withPersistence()) { region.getDiskRegion().writeRVV(region, false); region.getDiskRegion().writeRVVGC(region); } if (TRACE_GII) { region.getLogWriterI18n().info(LocalizedStrings.DEBUG, "version vector is now " + region.getVersionVector().fullToString()); } }
public void endDestroyDataStorage(LocalRegion region, DiskRegion dr) { // logger.info(LocalizedStrings.DEBUG, "DEBUG endPartialDestroyRegion dr=" + // dr.getName()); try { clear(region, dr, null); dr.resetRVV(); dr.setRVVTrusted(false); dr.writeRVV(null, null); // just persist the empty rvv with trust=false } catch (RegionDestroyedException rde) { // ignore a RegionDestroyedException at this stage } if (this.initFile != null && dr.isBackup()) { this.initFile.endDestroyDataStorage(dr); } }
if (o!=null && o instanceof LocalRegion) { LocalRegion lr = (LocalRegion)o; lr.getDiskRegion().writeRVV(null, true); lr.getDiskRegion().writeRVVGC(lr); } else {
writeRVV(null, true); writeRVVGC((LocalRegion)drs); } else {
writeRVV(null, true); writeRVVGC(drs); } else {
if (o!=null && o instanceof LocalRegion) { LocalRegion lr = (LocalRegion)o; lr.getDiskRegion().writeRVV(null, true); lr.getDiskRegion().writeRVVGC(lr); } else {
logger.trace(LogMarker.RVV, "Clear: Saved current rvv: {}", diskRegion.getRegionVersionVector()); diskRegion.writeRVV(this, null); diskRegion.writeRVVGC(this);
getLogWriterI18n().info(LocalizedStrings.DEBUG, "Clear: Saved current rvv: "+diskRegion.getRegionVersionVector()); diskRegion.writeRVV(this, null); diskRegion.writeRVVGC(this);