private void createHolderTest(boolean useBitSet) { RegionVersionHolder h = createHolder(useBitSet); assertEquals(0, h.getExceptionCount()); }
@Test public void testFillSpecialExceptionWithBitSet() { RegionVersionHolder h = createHolder(true); h.recordVersion(1l); createSpecialException(h); assertEquals(1, h.getExceptionCount()); RVVException e = (RVVException) h.getExceptionForTest().iterator().next(); assertTrue(h.isSpecialException(e, h)); h.recordVersion(2l); // BUG: the exception is not removed // assertIndexDetailsEquals("unexpected RVV exception : " + h, 0, h.getExceptionCount()); }
private void recordZeroDoesNothing(boolean useBitSet) { RegionVersionHolder h = createHolder(useBitSet); h.recordVersion(0l); assertEquals(0, h.getExceptionCount()); assertEquals(0l, h.getVersion()); }
private void skippedVersionCreatesException(boolean useBitSet) { RegionVersionHolder h = createHolder(useBitSet); h.recordVersion(2l); assertEquals(1, h.getExceptionCount()); assertEquals(2l, h.getVersion()); }
private void fillLargeException(boolean useBitSet) { RegionVersionHolder h = createHolder(useBitSet); long bigVersion = RegionVersionHolder.BIT_SET_WIDTH + 1; h.recordVersion(bigVersion); for (long i = 0l; i < bigVersion; i++) { h.recordVersion(i); } assertEquals("expected no exceptions in " + h, 0, h.getExceptionCount()); assertEquals(bigVersion, h.getVersion()); }
private void recordSequentialVersions(boolean useBitSet) { RegionVersionHolder h = createHolder(useBitSet); h.recordVersion(1l); h.recordVersion(2l); h.recordVersion(3l); assertEquals(0, h.getExceptionCount()); assertEquals(3l, h.getVersion()); }
private void fillException(boolean useBitSet) { RegionVersionHolder h = createHolder(useBitSet); h.recordVersion(3l); h.recordVersion(1l); h.recordVersion(2l); h.recordVersion(2l); assertEquals(0, h.getExceptionCount()); assertEquals(3l, h.getVersion()); }
@Test public void testReceiveDuplicateAfterBitSetFlushWithBitSet() { RegionVersionHolder h = createHolder(true); long bigVersion = RegionVersionHolder.BIT_SET_WIDTH + 1; h.recordVersion(bigVersion); for (long i = 0l; i < bigVersion; i++) { h.recordVersion(i); } h.recordVersion(bigVersion); assertEquals("expected no exceptions in " + h, 0, h.getExceptionCount()); assertEquals(bigVersion, h.getVersion()); }