This is an automated email from the ASF dual-hosted git repository.
yashmayya 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 d0e05f8e8cf Fix regression in SSE query optimization for hybrid tables
(#17751)
d0e05f8e8cf is described below
commit d0e05f8e8cf7a8b1578891824d3f1a7a6fb0c0a6
Author: Yash Mayya <[email protected]>
AuthorDate: Tue Feb 24 11:49:34 2026 -0800
Fix regression in SSE query optimization for hybrid tables (#17751)
---
.../broker/requesthandler/BaseSingleStageBrokerRequestHandler.java | 4 ++++
1 file changed, 4 insertions(+)
diff --git
a/pinot-broker/src/main/java/org/apache/pinot/broker/requesthandler/BaseSingleStageBrokerRequestHandler.java
b/pinot-broker/src/main/java/org/apache/pinot/broker/requesthandler/BaseSingleStageBrokerRequestHandler.java
index 140d22ae97f..62ddffa613b 100644
---
a/pinot-broker/src/main/java/org/apache/pinot/broker/requesthandler/BaseSingleStageBrokerRequestHandler.java
+++
b/pinot-broker/src/main/java/org/apache/pinot/broker/requesthandler/BaseSingleStageBrokerRequestHandler.java
@@ -596,6 +596,9 @@ public abstract class BaseSingleStageBrokerRequestHandler
extends BaseBrokerRequ
attachTimeBoundary(offlinePinotQuery, timeBoundaryInfo, true);
handleExpressionOverride(offlinePinotQuery,
_tableCache.getExpressionOverrideMap(offlineTableName));
handleTimestampIndexOverride(offlinePinotQuery, offlineTableConfig);
+ // Re-optimize after attaching the time boundary filter so that filter
optimizers (e.g. NumericalFilterOptimizer,
+ // FlattenAndOrFilterOptimizer, MergeRangeFilterOptimizer) are applied
to the time boundary predicate.
+ _queryOptimizer.optimize(offlinePinotQuery, schema);
offlineBrokerRequest =
CalciteSqlCompiler.convertToBrokerRequest(offlinePinotQuery);
PinotQuery realtimePinotQuery = serverPinotQuery.deepCopy();
@@ -603,6 +606,7 @@ public abstract class BaseSingleStageBrokerRequestHandler
extends BaseBrokerRequ
attachTimeBoundary(realtimePinotQuery, timeBoundaryInfo, false);
handleExpressionOverride(realtimePinotQuery,
_tableCache.getExpressionOverrideMap(realtimeTableName));
handleTimestampIndexOverride(realtimePinotQuery, realtimeTableConfig);
+ _queryOptimizer.optimize(realtimePinotQuery, schema);
realtimeBrokerRequest =
CalciteSqlCompiler.convertToBrokerRequest(realtimePinotQuery);
requestContext.setFanoutType(RequestContext.FanoutType.HYBRID);
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]