gortiz commented on code in PR #13733: URL: https://github.com/apache/pinot/pull/13733#discussion_r1752014193
########## pinot-query-runtime/src/main/java/org/apache/pinot/query/runtime/QueryRunner.java: ########## @@ -256,4 +262,66 @@ private Map<String, String> consolidateMetadata(Map<String, String> customProper public void cancel(long requestId) { _opChainScheduler.cancel(requestId); } + + public StagePlan explainQuery( + WorkerMetadata workerMetadata, StagePlan stagePlan, Map<String, String> requestMetadata) { + + if (!workerMetadata.isLeafStageWorker()) { + LOGGER.debug("Explain query on intermediate stages is a NOOP"); + return stagePlan; + } + long requestId = Long.parseLong(requestMetadata.get(CommonConstants.Query.Request.MetadataKeys.REQUEST_ID)); + long timeoutMs = Long.parseLong(requestMetadata.get(CommonConstants.Broker.Request.QueryOptionKey.TIMEOUT_MS)); + long deadlineMs = System.currentTimeMillis() + timeoutMs; + + StageMetadata stageMetadata = stagePlan.getStageMetadata(); + Map<String, String> opChainMetadata = consolidateMetadata(stageMetadata.getCustomProperties(), requestMetadata); + + if (PipelineBreakerExecutor.hasPipelineBreakers(stagePlan)) { + // TODO: Support pipeline breakers before merging this feature. + LOGGER.error("Pipeline breaker is not supported in explain query"); + return stagePlan; + } Review Comment: I modified the description yesterday to indicate the PipelineBreaker state. Basically we in the current explain we just prune these nodes. In the new explain we will fail with that error shown here. We can work on that feature in the future. -- 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