gortiz commented on code in PR #15245:
URL: https://github.com/apache/pinot/pull/15245#discussion_r2005261336
##########
pinot-query-runtime/src/main/java/org/apache/pinot/query/runtime/plan/pipeline/PipelineBreakerOperator.java:
##########
@@ -42,15 +42,13 @@ public class PipelineBreakerOperator extends
MultiStageOperator {
private static final Logger LOGGER =
LoggerFactory.getLogger(PipelineBreakerOperator.class);
private static final String EXPLAIN_NAME = "PIPELINE_BREAKER";
- private final Map<Integer, Operator<TransferableBlock>> _workerMap;
+ private final Map<Integer, MultiStageOperator> _workerMap;
- private Map<Integer, List<TransferableBlock>> _resultMap;
- private TransferableBlock _errorBlock;
- @Nullable
- private MultiStageQueryStats _queryStats = null;
+ private Map<Integer, List<MseBlock>> _resultMap;
+ private ErrorMseBlock _errorBlock;
private final StatMap<StatKey> _statMap = new StatMap<>(StatKey.class);
- public PipelineBreakerOperator(OpChainExecutionContext context, Map<Integer,
Operator<TransferableBlock>> workerMap) {
+ public PipelineBreakerOperator(OpChainExecutionContext context, Map<Integer,
MultiStageOperator> workerMap) {
Review Comment:
Pipeline breakers are not very well explained. They are our way of
implementing dynamic filters (see [our
docs](https://docs.pinot.apache.org/users/user-guide-query/multi-stage-query/optimizing-joins#optimizing-semi-join-to-use-indexes)
or [Trino docs](https://trino.io/episodes/11.html) or [our SQL or death talk
last month](https://www.youtube.com/watch?v=yRMhAL_6f4o))
--
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]