@Override public boolean isActiveQueueEmpty() { final FlowFileQueueSize queueSize = queue.getFlowFileQueueSize(); return queueSize.getActiveCount() == 0 && queueSize.getSwappedCount() == 0; }
public boolean isActiveQueueEmpty() { final FlowFileQueueSize queueSize = getFlowFileQueueSize(); return queueSize.getActiveCount() == 0 && queueSize.getSwappedCount() == 0; }
@Override public QueueSize getActiveQueueSize() { return new QueueSize(queueSize.getActiveCount(), queueSize.getActiveBytes()); }
@Override public QueueSize getActiveQueueSize() { return new QueueSize(queueSize.getActiveCount(), queueSize.getActiveBytes()); }
private void logIfNegative(final FlowFileQueueSize original, final FlowFileQueueSize newSize, final String counterName) { if (newSize.getActiveBytes() < 0 || newSize.getActiveCount() < 0 || newSize.getSwappedBytes() < 0 || newSize.getSwappedCount() < 0 || newSize.getUnacknowledgedBytes() < 0 || newSize.getUnacknowledgedCount() < 0) { logger.error("Updated Size of Queue " + counterName + " from " + original + " to " + newSize, new RuntimeException("Cannot create negative queue size")); } }
private int getFlowFileCount() { final FlowFileQueueSize size = getFlowFileQueueSize(); return size.getActiveCount() + size.getSwappedCount() + size.getUnacknowledgedCount(); }
private void incrementUnacknowledgedQueueSize(final int count, final long bytes) { boolean updated = false; while (!updated) { final FlowFileQueueSize original = size.get(); final FlowFileQueueSize newSize = new FlowFileQueueSize(original.getActiveCount(), original.getActiveBytes(), original.getSwappedCount(), original.getSwappedBytes(), original.getSwapFileCount(), original.getUnacknowledgedCount() + count, original.getUnacknowledgedBytes() + bytes); updated = updateSize(original, newSize); if (updated) { logIfNegative(original, newSize, "Unacknowledged"); } } }
protected void incrementActiveQueueSize(final int count, final long bytes) { boolean updated = false; while (!updated) { final FlowFileQueueSize original = size.get(); final FlowFileQueueSize newSize = new FlowFileQueueSize( original.getActiveCount() + count, original.getActiveBytes() + bytes, original.getSwappedCount(), original.getSwappedBytes(), original.getSwapFileCount(), original.getUnacknowledgedCount(), original.getUnacknowledgedBytes()); updated = updateSize(original, newSize); if (updated) { logIfNegative(original, newSize, "active"); } } }
private void incrementSwapQueueSize(final int count, final long bytes, final int fileCount) { boolean updated = false; while (!updated) { final FlowFileQueueSize original = getFlowFileQueueSize(); final FlowFileQueueSize newSize = new FlowFileQueueSize(original.getActiveCount(), original.getActiveBytes(), original.getSwappedCount() + count, original.getSwappedBytes() + bytes, original.getSwapFileCount() + fileCount, original.getUnacknowledgedCount(), original.getUnacknowledgedBytes()); updated = updateSize(original, newSize); if (updated) { logIfNegative(original, newSize, "swap"); } } }