public void addReadEntriesSample(int count, long totalSize) { readEntriesOps.recordMultipleEvents(count, totalSize); }
public void recordCacheHits(int count, long totalSize) { cacheHits.recordMultipleEvents(count, totalSize); }
public void recordCacheMiss(int count, long totalSize) { cacheMisses.recordMultipleEvents(count, totalSize); }
public void addReadEntriesSample(int count, long totalSize) { readEntriesOps.recordMultipleEvents(count, totalSize); }
public void addReadEntriesSample(int count, long totalSize) { readEntriesOps.recordMultipleEvents(count, totalSize); }
public void recordCacheHits(int count, long totalSize) { cacheHits.recordMultipleEvents(count, totalSize); }
public void recordCacheMiss(int count, long totalSize) { cacheMisses.recordMultipleEvents(count, totalSize); }
public void recordCacheHits(int count, long totalSize) { cacheHits.recordMultipleEvents(count, totalSize); }
public void recordCacheMiss(int count, long totalSize) { cacheMisses.recordMultipleEvents(count, totalSize); }
@Override public void markDeleteComplete(Object ctx) { long numMessagesExpired = (long) ctx - cursor.getNumberOfEntriesInBacklog(); msgExpired.recordMultipleEvents(numMessagesExpired, 0 /* no value stats */); updateRates(); if (log.isDebugEnabled()) { log.debug("[{}][{}] Mark deleted {} messages", topicName, subName, numMessagesExpired); } }
@Override public void markDeleteComplete(Object ctx) { long numMessagesExpired = (long) ctx - cursor.getNumberOfEntriesInBacklog(); msgExpired.recordMultipleEvents(numMessagesExpired, 0 /* no value stats */); updateRates(); if (log.isDebugEnabled()) { log.debug("[{}][{}] Mark deleted {} messages", topicName, subName, numMessagesExpired); } }
public void redeliverUnacknowledgedMessages() { // cleanup unackedMessage bucket and redeliver those unack-msgs again clearUnAckedMsgs(this); blockedConsumerOnUnackedMsgs = false; if (log.isDebugEnabled()) { log.debug("[{}-{}] consumer {} received redelivery", topicName, subscription, consumerId); } // redeliver unacked-msgs subscription.redeliverUnacknowledgedMessages(this); flowConsumerBlockedPermits(this); if (pendingAcks != null) { AtomicInteger totalRedeliveryMessages = new AtomicInteger(0); pendingAcks.forEach( (ledgerId, entryId, batchSize, none) -> totalRedeliveryMessages.addAndGet((int) batchSize)); msgRedeliver.recordMultipleEvents(totalRedeliveryMessages.get(), totalRedeliveryMessages.get()); pendingAcks.clear(); } }
public void redeliverUnacknowledgedMessages() { // cleanup unackedMessage bucket and redeliver those unack-msgs again clearUnAckedMsgs(this); blockedConsumerOnUnackedMsgs = false; // redeliver unacked-msgs subscription.redeliverUnacknowledgedMessages(this); flowConsumerBlockedPermits(this); if (pendingAcks != null) { AtomicInteger totalRedeliveryMessages = new AtomicInteger(0); pendingAcks.forEach( (ledgerId, entryId, batchSize, none) -> totalRedeliveryMessages.addAndGet((int) batchSize)); msgRedeliver.recordMultipleEvents(totalRedeliveryMessages.get(), totalRedeliveryMessages.get()); pendingAcks.clear(); } }
/** * Executed from I/O thread when sending receipt back to client */ @Override public void run() { if (log.isDebugEnabled()) { log.debug("[{}] [{}] [{}] Persisted message. cnx {}, sequenceId {}", producer.topic, producer.producerName, producer.producerId, producer.cnx, sequenceId); } // stats rateIn.recordMultipleEvents(batchSize, msgSize); producer.cnx.ctx().writeAndFlush( Commands.newSendReceipt(producer.producerId, sequenceId, ledgerId, entryId), producer.cnx.ctx().voidPromise()); producer.cnx.completedSendOperation(producer.isNonPersistentTopic); producer.publishOperationCompleted(); recycle(); }
/** * Executed from I/O thread when sending receipt back to client */ @Override public void run() { if (log.isDebugEnabled()) { log.debug("[{}] [{}] [{}] Persisted message. cnx {}, sequenceId {}", producer.topic, producer.producerName, producer.producerId, producer.cnx, sequenceId); } // stats rateIn.recordMultipleEvents(batchSize, msgSize); producer.cnx.ctx().writeAndFlush( Commands.newSendReceipt(producer.producerId, sequenceId, ledgerId, entryId), producer.cnx.ctx().voidPromise()); producer.cnx.completedSendOperation(); producer.publishOperationCompleted(); recycle(); }
msgOut.recordMultipleEvents(permitsToReduce, totalReadableBytes); sentMessages.totalSentMessages = permitsToReduce; sentMessages.totalSentMessageBytes = totalReadableBytes;
msgOut.recordMultipleEvents(permitsToReduce, totalReadableBytes); return permitsToReduce;
public void redeliverUnacknowledgedMessages(List<MessageIdData> messageIds) { int totalRedeliveryMessages = 0; List<PositionImpl> pendingPositions = Lists.newArrayList(); for (MessageIdData msg : messageIds) { PositionImpl position = PositionImpl.get(msg.getLedgerId(), msg.getEntryId()); LongPair batchSize = pendingAcks.get(position.getLedgerId(), position.getEntryId()); if (batchSize != null) { pendingAcks.remove(position.getLedgerId(), position.getEntryId()); totalRedeliveryMessages += batchSize.first; pendingPositions.add(position); } } addAndGetUnAckedMsgs(this, -totalRedeliveryMessages); blockedConsumerOnUnackedMsgs = false; if (log.isDebugEnabled()) { log.debug("[{}-{}] consumer {} received {} msg-redelivery {}", topicName, subscription, consumerId, totalRedeliveryMessages, pendingPositions.size()); } subscription.redeliverUnacknowledgedMessages(this, pendingPositions); msgRedeliver.recordMultipleEvents(totalRedeliveryMessages, totalRedeliveryMessages); int numberOfBlockedPermits = Math.min(totalRedeliveryMessages, PERMITS_RECEIVED_WHILE_CONSUMER_BLOCKED_UPDATER.get(this)); // if permitsReceivedWhileConsumerBlocked has been accumulated then pass it to Dispatcher to flow messages if (numberOfBlockedPermits > 0) { PERMITS_RECEIVED_WHILE_CONSUMER_BLOCKED_UPDATER.getAndAdd(this, -numberOfBlockedPermits); MESSAGE_PERMITS_UPDATER.getAndAdd(this, numberOfBlockedPermits); subscription.consumerFlow(this, numberOfBlockedPermits); } }
public void redeliverUnacknowledgedMessages(List<MessageIdData> messageIds) { int totalRedeliveryMessages = 0; List<PositionImpl> pendingPositions = Lists.newArrayList(); for (MessageIdData msg : messageIds) { PositionImpl position = PositionImpl.get(msg.getLedgerId(), msg.getEntryId()); LongPair batchSize = pendingAcks.get(position.getLedgerId(), position.getEntryId()); if (batchSize != null) { pendingAcks.remove(position.getLedgerId(), position.getEntryId()); totalRedeliveryMessages += batchSize.first; pendingPositions.add(position); } } addAndGetUnAckedMsgs(this, -totalRedeliveryMessages); blockedConsumerOnUnackedMsgs = false; subscription.redeliverUnacknowledgedMessages(this, pendingPositions); msgRedeliver.recordMultipleEvents(totalRedeliveryMessages, totalRedeliveryMessages); int numberOfBlockedPermits = Math.min(totalRedeliveryMessages, PERMITS_RECEIVED_WHILE_CONSUMER_BLOCKED_UPDATER.get(this)); // if permitsReceivedWhileConsumerBlocked has been accumulated then pass it to Dispatcher to flow messages if (numberOfBlockedPermits > 0) { PERMITS_RECEIVED_WHILE_CONSUMER_BLOCKED_UPDATER.getAndAdd(this, -numberOfBlockedPermits); MESSAGE_PERMITS_UPDATER.getAndAdd(this, numberOfBlockedPermits); subscription.consumerFlow(this, numberOfBlockedPermits); } }