[ https://issues.apache.org/jira/browse/HIVE-23550?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Adesh Kumar Rao resolved HIVE-23550. ------------------------------------ Fix Version/s: (was: 4.0.0) Resolution: Invalid HIVE-21641 changed the usage of CalciteAnalyzer from just CalciteAnalyzer.genLogicalPlan to fully analyzing (CalciteAnalyzer.analyze) the query. That includes the retry logic for calcite semantic exceptions too. Closing this. > GetSplits does not retries queries for CacliteSemanticException > --------------------------------------------------------------- > > Key: HIVE-23550 > URL: https://issues.apache.org/jira/browse/HIVE-23550 > Project: Hive > Issue Type: Bug > Components: UDF > Affects Versions: 3.1.0 > Reporter: Adesh Kumar Rao > Assignee: Adesh Kumar Rao > Priority: Major > > Reproducible case: > {noformat} > create table t1 (c1 int, c2 int, c3 int); > select get_splits("select c2, count(distinct c3) from t1 group by c2 having > count(distinct c3) > 1",0);{noformat} > > Error: > {noformat} > Error: java.io.IOException: > org.apache.hadoop.hive.ql.optimizer.calcite.CalciteSemanticException: > Distinct without an aggregation. (state=,code=0) > {noformat} > This happens because calcite does not understand the query "select c2, > count(distinct c3) from t1 group by c2 having count(distinct c3) > 1" and > throws calciteSemanticException > > If this query is run directly via beeline, hiveserver2 catches this exception > and re-analyzes the query by turning off the cbo. > > This retrying mechanism is missing in GetSplits UDF. > -- This message was sent by Atlassian Jira (v8.3.4#803005)