gianm commented on a change in pull request #9648: SQL: More straightforward 
handling of join planning.
URL: https://github.com/apache/druid/pull/9648#discussion_r406462893
 
 

 ##########
 File path: 
sql/src/main/java/org/apache/druid/sql/calcite/rel/CostEstimates.java
 ##########
 @@ -74,13 +74,19 @@
    * Multiplier to apply to an outer query via {@link DruidOuterQueryRel}. 
Encourages pushing down time-saving
    * operations to the lowest level of the query stack, because they'll have 
bigger impact there.
    */
-  static final double MULTIPLIER_OUTER_QUERY = 0.1;
+  static final double MULTIPLIER_OUTER_QUERY = .1;
 
   /**
-   * Multiplier to apply to a join when the left-hand side is a subquery. 
Encourages avoiding subqueries. Subqueries
-   * inside joins must be inlined, which incurs substantial reduction in 
scalability, so this high number is justified.
+   * Cost to add to a join when either side is a subquery. Strongly encourages 
avoiding subqueries, since they must be
+   * inlined and then the join must run on the Broker.
    */
-  static final double MULTIPLIER_JOIN_SUBQUERY = 1000000000;
+  static final double COST_JOIN_SUBQUERY = 1e5;
 
 Review comment:
   Mostly I made them up, but then verified through experiments that they 
achieve the plans that we want to achieve.

----------------------------------------------------------------
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.
 
For queries about this service, please contact Infrastructure at:
[email protected]


With regards,
Apache Git Services

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to