You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@pinot.apache.org by "walterddr (via GitHub)" <gi...@apache.org> on 2023/05/23 03:28:55 UTC

[GitHub] [pinot] walterddr commented on a diff in pull request #10794: [multistage] Avoid Busy Waiting in Broker

walterddr commented on code in PR #10794:
URL: https://github.com/apache/pinot/pull/10794#discussion_r1201467266


##########
pinot-query-runtime/src/main/java/org/apache/pinot/query/service/dispatch/QueryDispatcher.java:
##########
@@ -231,6 +232,9 @@ private static List<DataBlock> reduceMailboxReceive(MailboxReceiveOperator mailb
             "Received error query execution result block: " + transferableBlock.getDataBlock().getExceptions());
       }
       if (transferableBlock.isNoOpBlock()) {
+        // If all mailbox return no-op block, then we sleep for some time before retrying. This can increase the latency
+        // of the query a little bit but it will prevent the broker from running into a busy-waiting loop.
+        Thread.sleep(10);

Review Comment:
   the best way to run this is a "pipelinebreaker" which is described as MVP in #10779 . 



-- 
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-unsubscribe@pinot.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@pinot.apache.org
For additional commands, e-mail: commits-help@pinot.apache.org