agavra commented on code in PR #9887:
URL: https://github.com/apache/pinot/pull/9887#discussion_r1041196826


##########
pinot-query-runtime/src/main/java/org/apache/pinot/query/mailbox/GrpcReceivingMailbox.java:
##########
@@ -123,6 +124,11 @@ private TransferableBlock 
fromMailboxContent(MailboxContent mailboxContent)
         return new TransferableBlock(dataBlock);
       }
     }
+
+    if 
(mailboxContent.getMetadataOrDefault(ChannelUtils.MAILBOX_METADATA_END_OF_STREAM_KEY,
 "false").equals("true")) {
+      return TransferableBlockUtils.getEndOfStreamTransferableBlock();
+    }

Review Comment:
   yeah, it wasn't causing a problem because it just got re-scheduled. 
basically what happened is that the mailbox would close without the GRPC 
mailbox returning EOS, the next time the `MailboxReceiveOperator` was 
scheduled, it noticed all of its mailboxes were closed so it generated EOS.
   
   with this change, it would never get scheduled again so it didn't get the 
chance to notice all its mailboxes were closed.
   
   in a follow-up PR I'm considering scheduling operators on some schedule to 
avoid such scenarios but I didn't want to add the schedule until I was sure 
that the logic was correct independently e2e



-- 
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: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to