@Override protected Versioned<Slop> computeNext() { try { Versioned<Slop> head = null; if(!shutDown) { head = slopQueue.take(); if(head.equals(END)) { shutDown = true; isComplete = true; } else { slopsDone++; if(slopsDone % voldemortConfig.getSlopBatchSize() == 0) { shutDown = true; } writeThrottler.maybeThrottle(writtenLast); writtenLast = slopSize(head); deleteBatch.add(Pair.create(head.getValue().makeKey(), (Version) head.getVersion())); return head; } } return endOfData(); } catch(Exception e) { logger.error("Got an exception " + e); return endOfData(); } }
public void testClone() { Versioned<Integer> v1 = getVersioned(2, 1, 2, 3); Versioned<Integer> v2 = v1.cloneVersioned(); assertEquals(v1, v2); assertTrue(v1 != v2); assertTrue(v1.getVersion() != v2.getVersion()); ((VectorClock) v2.getVersion()).incrementVersion(1, System.currentTimeMillis()); assertTrue(!v1.equals(v2)); }
public void testEquals() { assertEquals("Null versioneds not equal.", getVersioned(null), getVersioned(null)); assertEquals("equal versioneds not equal.", getVersioned(1), getVersioned(1)); assertEquals("equal versioneds not equal.", getVersioned(1, 1, 2), getVersioned(1, 1, 2)); assertTrue("Equals values with different version are equal!", !getVersioned(1, 1, 2).equals(getVersioned(1, 1, 2, 2))); assertTrue("Different values with same version are equal!", !getVersioned(1, 1, 2).equals(getVersioned(2, 1, 2))); assertTrue("Different values with different version are equal!", !getVersioned(1, 1, 2).equals(getVersioned(2, 1, 1, 2))); // Should work for array types too! assertEquals("Equal arrays are not equal!", new Versioned<byte[]>(new byte[] { 1 }), new Versioned<byte[]>(new byte[] { 1 })); }