This is an automated email from the ASF dual-hosted git repository.
gortiz pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/pinot.git
The following commit(s) were added to refs/heads/master by this push:
new b50a421740a Add hook in MSE to expose compiled query (#18666)
b50a421740a is described below
commit b50a421740aa0749d63a12e2740595dccac21c37
Author: Kartik Khare <[email protected]>
AuthorDate: Wed Jun 3 20:01:19 2026 +0530
Add hook in MSE to expose compiled query (#18666)
---
.../broker/requesthandler/MultiStageBrokerRequestHandler.java | 10 ++++++++++
1 file changed, 10 insertions(+)
diff --git
a/pinot-broker/src/main/java/org/apache/pinot/broker/requesthandler/MultiStageBrokerRequestHandler.java
b/pinot-broker/src/main/java/org/apache/pinot/broker/requesthandler/MultiStageBrokerRequestHandler.java
index 3fc53f634a6..fca747757cd 100644
---
a/pinot-broker/src/main/java/org/apache/pinot/broker/requesthandler/MultiStageBrokerRequestHandler.java
+++
b/pinot-broker/src/main/java/org/apache/pinot/broker/requesthandler/MultiStageBrokerRequestHandler.java
@@ -427,6 +427,7 @@ public class MultiStageBrokerRequestHandler extends
BaseBrokerRequestHandler {
// Apply broker-default query options before branching to
EXPLAIN/execute so both paths see the same options.
applyBrokerDefaultQueryOptions(compiledQuery.getOptions());
+ prepareCompiledQueryForPlanning(compiledQuery, requestId,
requestContext, httpHeaders);
if (sqlNodeAndOptions.getSqlNode().getKind() == SqlKind.EXPLAIN) {
return explain(compiledQuery, requestId, requestContext, queryTimer);
@@ -588,6 +589,15 @@ public class MultiStageBrokerRequestHandler extends
BaseBrokerRequestHandler {
}
}
+ /**
+ * Extension hook for preparing a compiled query's planner-visible options
after compilation, authorization and
+ * broker defaults, but before planning/explain. Subclasses can use the
validated table set from
+ * {@link QueryEnvironment.CompiledQuery#getTableNames()} without re-parsing
SQL.
+ */
+ protected void
prepareCompiledQueryForPlanning(QueryEnvironment.CompiledQuery compiledQuery,
long requestId,
+ RequestContext requestContext, HttpHeaders httpHeaders) {
+ }
+
private long getTimeoutMs(Map<String, String> queryOptions) {
Long timeoutMsFromQueryOption =
QueryOptionsUtils.getTimeoutMs(queryOptions);
return timeoutMsFromQueryOption != null ? timeoutMsFromQueryOption :
_brokerTimeoutMs;
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]