Jackie-Jiang commented on code in PR #11205: URL: https://github.com/apache/pinot/pull/11205#discussion_r1284940784
########## pinot-query-runtime/src/main/java/org/apache/pinot/query/mailbox/ReceivingMailbox.java: ########## @@ -51,16 +51,30 @@ public class ReceivingMailbox { // TODO: Revisit if this is the correct way to apply back pressure private final BlockingQueue<TransferableBlock> _blocks = new ArrayBlockingQueue<>(DEFAULT_MAX_PENDING_BLOCKS); private final AtomicReference<TransferableBlock> _errorBlock = new AtomicReference<>(); + @Nullable + private volatile Reader _reader; public ReceivingMailbox(String id, Consumer<OpChainId> receiveMailCallback) { _id = id; _receiveMailCallback = receiveMailCallback; } + public void registeredReader(Reader reader) { Review Comment: In `InMemorySendingMailbox`, we directly get the receiving mailbox and put blocks into it. At that moment the reader is not registered but there are contents within the mailbox. Our use pattern is not standard, so not sure if we should put a general framework. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: commits-unsubscr...@pinot.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org --------------------------------------------------------------------- To unsubscribe, e-mail: commits-unsubscr...@pinot.apache.org For additional commands, e-mail: commits-h...@pinot.apache.org