@Test(timeout = 50000) public void testSweepOneConservative() { createTable(SweepStrategy.CONSERVATIVE); putIntoDefaultColumn("foo", "bar", 50); putIntoDefaultColumn("foo", "baz", 100); Optional<SweepResults> optResults = completeSweep(175); optResults.ifPresent(results -> { assertEquals(1, results.getStaleValuesDeleted()); assertThat(results.getCellTsPairsExamined()).isGreaterThanOrEqualTo(2); }); assertEquals("baz", getFromDefaultColumn("foo", 150)); assertEquals("", getFromDefaultColumn("foo", 80)); assertEquals(ImmutableSet.of(-1L, 100L), getAllTsFromDefaultColumn("foo")); }
@Test(timeout = 50000) public void testSweepOneThorough() { createTable(SweepStrategy.THOROUGH); putIntoDefaultColumn("foo", "bar", 50); putIntoDefaultColumn("foo", "baz", 100); Optional<SweepResults> optResults = completeSweep(175); optResults.ifPresent(results -> { assertEquals(1, results.getStaleValuesDeleted()); assertThat(results.getCellTsPairsExamined()).isGreaterThanOrEqualTo(2); }); assertEquals("baz", getFromDefaultColumn("foo", 150)); assertNull(getFromDefaultColumn("foo", 80)); assertEquals(ImmutableSet.of(100L), getAllTsFromDefaultColumn("foo")); }
@Test(timeout = 50000) public void testDontSweepLatestThorough() { createTable(SweepStrategy.THOROUGH); putIntoDefaultColumn("foo", "bar", 50); Optional<SweepResults> optResults = completeSweep(75); optResults.ifPresent(results -> { assertEquals(0, results.getStaleValuesDeleted()); assertThat(results.getCellTsPairsExamined()).isGreaterThanOrEqualTo(1); }); assertEquals("bar", getFromDefaultColumn("foo", 150)); assertEquals(ImmutableSet.of(50L), getAllTsFromDefaultColumn("foo")); }
@Test(timeout = 50000) public void testSweepManyValuesConservative() { createTable(SweepStrategy.CONSERVATIVE); putIntoDefaultColumn("foo", "bar", 50); putIntoDefaultColumn("foo", "baz", 100); putIntoDefaultColumn("foo", "buzz", 125); Optional<SweepResults> optResults = completeSweep(175); optResults.ifPresent(results -> { assertEquals(2, results.getStaleValuesDeleted()); assertThat(results.getCellTsPairsExamined()).isGreaterThanOrEqualTo(3); }); assertEquals("buzz", getFromDefaultColumn("foo", 200)); assertEquals("", getFromDefaultColumn("foo", 124)); assertEquals(ImmutableSet.of(-1L, 125L), getAllTsFromDefaultColumn("foo")); }
@Test(timeout = 50000) public void testDontSweepLatestConservative() { createTable(SweepStrategy.CONSERVATIVE); putIntoDefaultColumn("foo", "bar", 50); Optional<SweepResults> optResults = completeSweep(75); optResults.ifPresent(results -> { assertEquals(0, results.getStaleValuesDeleted()); assertThat(results.getCellTsPairsExamined()).isGreaterThanOrEqualTo(1); }); assertEquals("bar", getFromDefaultColumn("foo", 150)); assertEqualsDisregardingExtraSentinels(ImmutableSet.of(50L), getAllTsFromDefaultColumn("foo")); }
@Test(timeout = 50000) public void testSweepLatestDeletedThorough() { createTable(SweepStrategy.THOROUGH); putIntoDefaultColumn("foo", "", 50); Optional<SweepResults> optResults = completeSweep(75); optResults.ifPresent(results -> { assertEquals(1, results.getStaleValuesDeleted()); assertThat(results.getCellTsPairsExamined()).isGreaterThanOrEqualTo(1); }); assertNull(getFromDefaultColumn("foo", 150)); assertEquals(ImmutableSet.of(), getAllTsFromDefaultColumn("foo")); }
@Test(timeout = 50000) public void testSweepLatestDeletedMultiValConservative() { createTable(SweepStrategy.CONSERVATIVE); putIntoDefaultColumn("foo", "old value", 40); putIntoDefaultColumn("foo", "", 50); Optional<SweepResults> optResults = completeSweep(75); optResults.ifPresent(results -> { assertEquals(1, results.getStaleValuesDeleted()); assertThat(results.getCellTsPairsExamined()).isGreaterThanOrEqualTo(1); }); assertEquals("", getFromDefaultColumn("foo", 150)); assertEquals(ImmutableSet.of(-1L, 50L), getAllTsFromDefaultColumn("foo")); }
@Test(timeout = 50000) public void testSweepLatestDeletedMultiRowThorough() { createTable(SweepStrategy.THOROUGH); putIntoDefaultColumn("foo", "", 50); put("foo-2", "other", "womp", 60); Optional<SweepResults> optResults = completeSweep(75); optResults.ifPresent(results -> { assertEquals(1, results.getStaleValuesDeleted()); assertThat(results.getCellTsPairsExamined()).isGreaterThanOrEqualTo(1); }); assertNull(getFromDefaultColumn("foo", 150)); assertEquals(ImmutableSet.of(), getAllTsFromDefaultColumn("foo")); }
@Test(timeout = 50000) public void testSweepLatestNotDeletedMultiValThorough() { createTable(SweepStrategy.THOROUGH); putIntoDefaultColumn("foo", "old value", 40); putIntoDefaultColumn("foo", "new value", 50); Optional<SweepResults> optResults = completeSweep(75); optResults.ifPresent(results -> { assertEquals(1, results.getStaleValuesDeleted()); assertThat(results.getCellTsPairsExamined()).isGreaterThanOrEqualTo(1); }); assertEquals("new value", getFromDefaultColumn("foo", 150)); assertEquals(ImmutableSet.of(50L), getAllTsFromDefaultColumn("foo")); }
@Test(timeout = 50000) public void testSweepManyLatestDeletedThorough2() { createTable(SweepStrategy.THOROUGH); putIntoDefaultColumn("foo", "bar", 50); putIntoDefaultColumn("foo", "baz", 100); putIntoDefaultColumn("foo", "foo", 125); Optional<SweepResults> optResults = completeSweep(175); optResults.ifPresent(results -> { assertEquals(2, results.getStaleValuesDeleted()); assertThat(results.getCellTsPairsExamined()).isGreaterThanOrEqualTo(3); }); assertEquals("foo", getFromDefaultColumn("foo", 200)); assertEquals(ImmutableSet.of(125L), getAllTsFromDefaultColumn("foo")); }
@Test(timeout = 50000) public void testSweepManyLatestDeletedThorough1() { createTable(SweepStrategy.THOROUGH); putIntoDefaultColumn("foo", "bar", 50); putIntoDefaultColumn("foo", "baz", 100); putIntoDefaultColumn("foo", "", 125); putIntoDefaultColumn("zzz", "bar", 51); Optional<SweepResults> optResults = completeSweep(175); optResults.ifPresent(results -> { assertEquals(3, results.getStaleValuesDeleted()); assertThat(results.getCellTsPairsExamined()).isGreaterThanOrEqualTo(4); }); assertNull(getFromDefaultColumn("foo", 200)); assertEquals(ImmutableSet.of(), getAllTsFromDefaultColumn("foo")); }
@Test(timeout = 50000) public void testSweepLatestDeletedMultiColThorough() { createTable(SweepStrategy.THOROUGH); put("foo", "other column", "other value", 40); putIntoDefaultColumn("foo", "", 50); Optional<SweepResults> optResults = completeSweep(75); optResults.ifPresent(results -> { assertEquals(1, results.getStaleValuesDeleted()); assertThat(results.getCellTsPairsExamined()).isGreaterThanOrEqualTo(1); }); // The default column had its only value deleted assertNull(getFromDefaultColumn("foo", 150)); assertEquals(ImmutableSet.of(), getAllTsFromDefaultColumn("foo")); // The other column was unaffected assertEquals("other value", get("foo", "other column", 150)); assertEquals(ImmutableSet.of(40L), getAllTs("foo", "other column")); }
@Test(timeout = 50000) public void testSweepLatestDeletedMultiValThorough() { createTable(SweepStrategy.THOROUGH); putIntoDefaultColumn("foo", "old value", 40); putIntoDefaultColumn("foo", "", 50); Optional<SweepResults> optResults = completeSweep(75); optResults.ifPresent(results -> { assertEquals(2, results.getStaleValuesDeleted()); assertThat(results.getCellTsPairsExamined()).isGreaterThanOrEqualTo(1); }); assertNull(getFromDefaultColumn("foo", 150)); assertEquals(ImmutableSet.of(), getAllTsFromDefaultColumn("foo")); // The second sweep has no cells to examine optResults = completeSweep(75); optResults.ifPresent(results -> { assertEquals(0, results.getStaleValuesDeleted()); assertEquals(0, results.getCellTsPairsExamined()); }); }
@Test(timeout = 50000) public void testSweepOneConservative() { createTable(SweepStrategy.CONSERVATIVE); putIntoDefaultColumn("foo", "bar", 50); putIntoDefaultColumn("foo", "baz", 100); Optional<SweepResults> optResults = completeSweep(175); optResults.ifPresent(results -> { assertEquals(1, results.getStaleValuesDeleted()); assertThat(results.getCellTsPairsExamined()).isGreaterThanOrEqualTo(2); }); assertEquals("baz", getFromDefaultColumn("foo", 150)); assertEquals("", getFromDefaultColumn("foo", 80)); assertEquals(ImmutableSet.of(-1L, 100L), getAllTsFromDefaultColumn("foo")); }
@Test(timeout = 50000) public void testSweepLatestDeletedThorough() { createTable(SweepStrategy.THOROUGH); putIntoDefaultColumn("foo", "", 50); Optional<SweepResults> optResults = completeSweep(75); optResults.ifPresent(results -> { assertEquals(1, results.getStaleValuesDeleted()); assertThat(results.getCellTsPairsExamined()).isGreaterThanOrEqualTo(1); }); assertNull(getFromDefaultColumn("foo", 150)); assertEquals(ImmutableSet.of(), getAllTsFromDefaultColumn("foo")); }
@Test(timeout = 50000) public void testDontSweepLatestConservative() { createTable(SweepStrategy.CONSERVATIVE); putIntoDefaultColumn("foo", "bar", 50); Optional<SweepResults> optResults = completeSweep(75); optResults.ifPresent(results -> { assertEquals(0, results.getStaleValuesDeleted()); assertThat(results.getCellTsPairsExamined()).isGreaterThanOrEqualTo(1); }); assertEquals("bar", getFromDefaultColumn("foo", 150)); assertEqualsDisregardingExtraSentinels(ImmutableSet.of(50L), getAllTsFromDefaultColumn("foo")); }
@Test(timeout = 50000) public void testDontSweepLatestThorough() { createTable(SweepStrategy.THOROUGH); putIntoDefaultColumn("foo", "bar", 50); Optional<SweepResults> optResults = completeSweep(75); optResults.ifPresent(results -> { assertEquals(0, results.getStaleValuesDeleted()); assertThat(results.getCellTsPairsExamined()).isGreaterThanOrEqualTo(1); }); assertEquals("bar", getFromDefaultColumn("foo", 150)); assertEquals(ImmutableSet.of(50L), getAllTsFromDefaultColumn("foo")); }
@Test(timeout = 50000) public void testSweepLatestNotDeletedMultiValThorough() { createTable(SweepStrategy.THOROUGH); putIntoDefaultColumn("foo", "old value", 40); putIntoDefaultColumn("foo", "new value", 50); Optional<SweepResults> optResults = completeSweep(75); optResults.ifPresent(results -> { assertEquals(1, results.getStaleValuesDeleted()); assertThat(results.getCellTsPairsExamined()).isGreaterThanOrEqualTo(1); }); assertEquals("new value", getFromDefaultColumn("foo", 150)); assertEquals(ImmutableSet.of(50L), getAllTsFromDefaultColumn("foo")); }
@Test(timeout = 50000) public void testSweepLatestDeletedMultiRowThorough() { createTable(SweepStrategy.THOROUGH); putIntoDefaultColumn("foo", "", 50); put("foo-2", "other", "womp", 60); Optional<SweepResults> optResults = completeSweep(75); optResults.ifPresent(results -> { assertEquals(1, results.getStaleValuesDeleted()); assertThat(results.getCellTsPairsExamined()).isGreaterThanOrEqualTo(1); }); assertNull(getFromDefaultColumn("foo", 150)); assertEquals(ImmutableSet.of(), getAllTsFromDefaultColumn("foo")); }
@Test(timeout = 50000) public void testSweepLatestDeletedMultiValConservative() { createTable(SweepStrategy.CONSERVATIVE); putIntoDefaultColumn("foo", "old value", 40); putIntoDefaultColumn("foo", "", 50); Optional<SweepResults> optResults = completeSweep(75); optResults.ifPresent(results -> { assertEquals(1, results.getStaleValuesDeleted()); assertThat(results.getCellTsPairsExamined()).isGreaterThanOrEqualTo(1); }); assertEquals("", getFromDefaultColumn("foo", 150)); assertEquals(ImmutableSet.of(-1L, 50L), getAllTsFromDefaultColumn("foo")); }