walterddr commented on code in PR #9100:
URL: https://github.com/apache/pinot/pull/9100#discussion_r937214640
##########
pinot-query-planner/src/main/java/org/apache/pinot/query/rules/PinotJoinExchangeNodeInsertRule.java:
##########
@@ -70,17 +70,17 @@ public void onMatch(RelOptRuleCall call) {
RelNode leftExchange;
RelNode rightExchange;
List<RelHint> hints = join.getHints();
- if (hints.contains(PinotRelationalHints.USE_HASH_DISTRIBUTE)) {
+ if (hints.contains(PinotRelationalHints.USE_BROADCAST_DISTRIBUTE)) {
+ leftExchange = LogicalExchange.create(leftInput,
RelDistributions.RANDOM_DISTRIBUTED);
+ rightExchange = LogicalExchange.create(rightInput,
RelDistributions.BROADCAST_DISTRIBUTED);
Review Comment:
this is not true. for example if we were to leverage the full potential of
all the server instances, we need to randomly distribute the payload to all
servers on left, but broadcast the right table to the same set of servers.
limiting the left hand side to stay put meant we can't do a scale-up join
operation which will take lots of memory/cpu
this would be an optimization on the server instance scheduling issue we are
planning to improve 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: [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]