kgyrtkirk commented on a change in pull request #1875:
URL: https://github.com/apache/hive/pull/1875#discussion_r566176263
##########
File path: ql/src/java/org/apache/hadoop/hive/ql/parse/CalcitePlanner.java
##########
@@ -679,27 +680,15 @@ Operator genOPTree(ASTNode ast, PlannerContext
plannerCtx) throws SemanticExcept
// Determine if we should re-throw the exception OR if we try to
mark plan as reAnayzeAST to retry
// planning as non-CBO.
- if (e instanceof CalciteSubquerySemanticException || e instanceof
CalciteViewSemanticException
- || e instanceof CalciteSubqueryRuntimeException) {
- // Non-CBO path for CalciteSubquerySemanticException fails with
completely different error
- // and masks the original failure.
- // Non-CBO path for CalciteViewSemanticException would fail in a
similar way as CBO path.
- throw new SemanticException(e);
- }
-
- boolean isHiveTest = conf.getBoolVar(ConfVars.HIVE_IN_TEST);
- // At this point we retry with CBO off:
- // 1) If this is not test mode (common case)
- // 2) If we are in test mode and we are missing stats
- // 3) if we are in test mode and a CalciteSemanticException is
generated
- reAnalyzeAST = (!isHiveTest || isMissingStats || e instanceof
CalciteSemanticException);
Review comment:
okay we could add a new mode to experiment with this - but I'm not sure
how usefull that would be; we can start with whitelisting the case when column
stats are missing - but I think that will not get us much further...probably
enabling that mode will expose in which other cases we should fall back...
----------------------------------------------------------------
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]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]