private void recordVersionWithoutBitSet(long version) { if ((version - this.version) > 1) { this.addException(this.version, version); logRecordVersion(version); this.version = version; return; } if (this.version > version) { this.addOlderVersion(version); } this.version = Math.max(this.version, version); }
addException(nextMissingVersion - 1, nextReceivedVersion); if (isDebugEnabled_RVV) { logger.trace(LogMarker.RVV_VERBOSE, "Added rvv exception e<rv{} - rv{}>",
private void createSpecialException(RegionVersionHolder h) { h.addException(h.getVersion() - 1, h.getVersion() + 1); }
vh1.addException(100, 106); assertTrue(vh2.sameAs(vh1)); validateExceptions(vh2);
@Test public void testSpecialException() { DiskStoreID id0 = new DiskStoreID(0, 0); DiskStoreID id1 = new DiskStoreID(0, 1); DiskStoreID id2 = new DiskStoreID(1, 0); DiskRegionVersionVector rvv0 = new DiskRegionVersionVector(id0); rvv0.getNextVersion(); rvv0.getNextVersion(); rvv0.getNextVersion(); rvv0.recordVersion(id1, 1); rvv0.recordVersion(id1, 2); DiskRegionVersionVector rvv1 = new DiskRegionVersionVector(id1); rvv1.recordVersions(rvv0); rvv1.recordVersion(id1, 3); RegionVersionHolder holder_at_rvv1 = rvv1.getLocalExceptions(); RegionVersionHolder holder_at_rvv0 = rvv0.getMemberToVersion().get(id1); holder_at_rvv1.addException(2, 4); assertFalse(rvv1.isNewerThanOrCanFillExceptionsFor(rvv0)); assertFalse(rvv0.isNewerThanOrCanFillExceptionsFor(rvv1)); assertTrue(rvv1.dominates(rvv0)); assertTrue(rvv0.dominates(rvv1)); }