@Test public void testRemoveSingleEntry() throws Exception { plist.addLast("First", new ByteSequence("A".getBytes())); Iterator<PListEntry> iterator = plist.iterator(); while (iterator.hasNext()) { iterator.next(); iterator.remove(); } }
protected synchronized void flushToDisk() { if (!memoryList.isEmpty() && store != null) { long start = 0; if (LOG.isTraceEnabled()) { start = System.currentTimeMillis(); LOG.trace("{}, flushToDisk() mem list size: {} {}", new Object[] { name, memoryList.size(), (systemUsage != null ? systemUsage.getMemoryUsage() : "") }); } for (Iterator<MessageReference> iterator = memoryList.iterator(); iterator.hasNext();) { MessageReference node = iterator.next(); node.decrementReferenceCount(); ByteSequence bs; try { bs = getByteSequence(node.getMessage()); getDiskList().addLast(node.getMessageId().toString(), bs); } catch (IOException e) { LOG.error("Failed to write to disk list", e); throw new RuntimeException(e); } } memoryList.clear(); setCacheEnabled(false); LOG.trace("{}, flushToDisk() done - {} ms {}", new Object[]{ name, (System.currentTimeMillis() - start), (systemUsage != null ? systemUsage.getMemoryUsage() : "") }); } }
@Test public void testDestroyNonEmpty() throws Exception { final int COUNT = 1000; Map<String, ByteSequence> map = new LinkedHashMap<String, ByteSequence>(); for (int i = 0; i < COUNT; i++) { String test = new String("test" + i); ByteSequence bs = new ByteSequence(test.getBytes()); map.put(test, bs); plist.addLast(test, bs); } plist.destroy(); assertEquals(0,plist.size()); }
@Test public void testRemoveSecond() throws Exception { Object first = plist.addLast("First", new ByteSequence("A".getBytes())); Object second = plist.addLast("Second", new ByteSequence("B".getBytes())); assertTrue(plist.remove(second)); assertTrue(plist.remove(first)); assertFalse(plist.remove(first)); }
@Test public void testRemoveSecondPosition() throws Exception { Object first = plist.addLast("First", new ByteSequence("A".getBytes())); Object second = plist.addLast("Second", new ByteSequence("B".getBytes())); assertTrue(plist.remove(second)); assertTrue(plist.remove(first)); assertFalse(plist.remove(first)); }
if (exceptions.isEmpty()) { String key = "PL>" + id + idSeed + "-" + j; entries.put(key, plist.addLast(key, payload)); } else { break;
protected void doTestRemove(final int COUNT) throws IOException { Map<String, ByteSequence> map = new LinkedHashMap<String, ByteSequence>(); for (int i = 0; i < COUNT; i++) { String test = new String("test" + i); ByteSequence bs = new ByteSequence(test.getBytes()); map.put(test, bs); plist.addLast(test, bs); } assertEquals(plist.size(), COUNT); PListEntry entry = getFirst(plist); while (entry != null) { plist.remove(entry.getLocator()); entry = getFirst(plist); } assertEquals(0,plist.size()); }
@Test public void testAddLast() throws Exception { final int COUNT = 1000; LinkedList<ByteSequence> list = new LinkedList<ByteSequence>(); for (int i = 0; i < COUNT; i++) { String test = new String("test" + i); ByteSequence bs = new ByteSequence(test.getBytes()); list.addLast(bs); plist.addLast(test, bs); } assertEquals(plist.size(), COUNT); PList.PListIterator actual = plist.iterator(); Iterator<ByteSequence> expected = list.iterator(); while (expected.hasNext()) { ByteSequence bs = expected.next(); assertTrue(actual.hasNext()); PListEntry entry = actual.next(); String origStr = new String(bs.getData(), bs.getOffset(), bs.getLength()); String plistString = new String(entry.getByteSequence().getData(), entry.getByteSequence().getOffset(), entry.getByteSequence().getLength()); assertEquals(origStr, plistString); } assertFalse(actual.hasNext()); }
getDiskList().addLast(node.getMessageId().toString(), bs); return true;
protected synchronized void flushToDisk() { if (!memoryList.isEmpty() && store != null) { long start = 0; if (LOG.isTraceEnabled()) { start = System.currentTimeMillis(); LOG.trace("{}, flushToDisk() mem list size: {} {}", new Object[] { name, memoryList.size(), (systemUsage != null ? systemUsage.getMemoryUsage() : "") }); } for (Iterator<MessageReference> iterator = memoryList.iterator(); iterator.hasNext();) { MessageReference node = iterator.next(); node.decrementReferenceCount(); ByteSequence bs; try { bs = getByteSequence(node.getMessage()); getDiskList().addLast(node.getMessageId().toString(), bs); } catch (IOException e) { LOG.error("Failed to write to disk list", e); throw new RuntimeException(e); } } memoryList.clear(); setCacheEnabled(false); LOG.trace("{}, flushToDisk() done - {} ms {}", new Object[]{ name, (System.currentTimeMillis() - start), (systemUsage != null ? systemUsage.getMemoryUsage() : "") }); } }
protected synchronized void flushToDisk() { if (!memoryList.isEmpty() && store != null) { long start = 0; if (LOG.isTraceEnabled()) { start = System.currentTimeMillis(); LOG.trace("{}, flushToDisk() mem list size: {} {}", new Object[] { name, memoryList.size(), (systemUsage != null ? systemUsage.getMemoryUsage() : "") }); } for (Iterator<MessageReference> iterator = memoryList.iterator(); iterator.hasNext();) { MessageReference node = iterator.next(); node.decrementReferenceCount(); ByteSequence bs; try { bs = getByteSequence(node.getMessage()); getDiskList().addLast(node.getMessageId().toString(), bs); } catch (IOException e) { LOG.error("Failed to write to disk list", e); throw new RuntimeException(e); } } memoryList.clear(); setCacheEnabled(false); LOG.trace("{}, flushToDisk() done - {} ms {}", new Object[]{ name, (System.currentTimeMillis() - start), (systemUsage != null ? systemUsage.getMemoryUsage() : "") }); } }
protected synchronized void flushToDisk() { if (!memoryList.isEmpty() && store != null) { long start = 0; if (LOG.isTraceEnabled()) { start = System.currentTimeMillis(); LOG.trace("{}, flushToDisk() mem list size: {} {}", new Object[] { name, memoryList.size(), (systemUsage != null ? systemUsage.getMemoryUsage() : "") }); } for (Iterator<MessageReference> iterator = memoryList.iterator(); iterator.hasNext();) { MessageReference node = iterator.next(); node.decrementReferenceCount(); ByteSequence bs; try { bs = getByteSequence(node.getMessage()); getDiskList().addLast(node.getMessageId().toString(), bs); } catch (IOException e) { LOG.error("Failed to write to disk list", e); throw new RuntimeException(e); } } memoryList.clear(); setCacheEnabled(false); LOG.trace("{}, flushToDisk() done - {} ms {}", new Object[]{ name, (System.currentTimeMillis() - start), (systemUsage != null ? systemUsage.getMemoryUsage() : "") }); } }
getDiskList().addLast(node.getMessageId().toString(), bs); return true;
getDiskList().addLast(node.getMessageId().toString(), bs); return true;
getDiskList().addLast(node.getMessageId().toString(), bs); return true;