[ https://issues.apache.org/jira/browse/HIVE-25919?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Stamatis Zampetakis resolved HIVE-25919. ---------------------------------------- Fix Version/s: 4.0.0 Resolution: Fixed Fixed in [0d1cffffc7c5005fe47759298fb35a1c67edc93f|https://github.com/apache/hive/commit/0d1cffffc7c5005fe47759298fb35a1c67edc93f]. Thanks for the review [~abstractdog] ! > ClassCastException when pushing boolean column predicate in > HBaseStorageHandler > ------------------------------------------------------------------------------- > > Key: HIVE-25919 > URL: https://issues.apache.org/jira/browse/HIVE-25919 > Project: Hive > Issue Type: Bug > Reporter: Naresh P R > Assignee: Stamatis Zampetakis > Priority: Major > Labels: pull-request-available > Fix For: 4.0.0 > > Attachments: test.q > > Time Spent: 50m > Remaining Estimate: 0h > > The following queries fail with a {{ClassCastException}} when the optimizer > tries to push the predicates in the underlying HBase table. > {code:sql} > CREATE TABLE hbase_table(row_key string, c1 boolean, c2 boolean) > STORED BY 'org.apache.hadoop.hive.hbase.HBaseStorageHandler' > WITH SERDEPROPERTIES ( > "hbase.columns.mapping" = ":key,cf:c1,cf:c2" > ); > -- Q1 > select * from hbase_table where c1 and c2; > -- Q2 > select * from hbase_table where c1=true and c2=true; > {code} > {code:java} > ClassCastException org.apache.hadoop.hive.ql.plan.ExprNodeColumnDesc cannot > be cast to org.apache.hadoop.hive.ql.plan.ExprNodeGenericFuncDesc > java.lang.ClassCastException: > org.apache.hadoop.hive.ql.plan.ExprNodeColumnDesc cannot be cast to > org.apache.hadoop.hive.ql.plan.ExprNodeGenericFuncDesc > at > org.apache.hadoop.hive.ql.index.IndexPredicateAnalyzer$1.process(IndexPredicateAnalyzer.java:163) > at > org.apache.hadoop.hive.ql.lib.DefaultRuleDispatcher.dispatch(DefaultRuleDispatcher.java:90) > at > org.apache.hadoop.hive.ql.lib.DefaultGraphWalker.dispatchAndReturn(DefaultGraphWalker.java:105) > at > org.apache.hadoop.hive.ql.lib.DefaultGraphWalker.dispatch(DefaultGraphWalker.java:89) > at > org.apache.hadoop.hive.ql.lib.DefaultGraphWalker.walk(DefaultGraphWalker.java:178) > at > org.apache.hadoop.hive.ql.lib.DefaultGraphWalker.startWalking(DefaultGraphWalker.java:120) > at > org.apache.hadoop.hive.ql.index.IndexPredicateAnalyzer.analyzePredicate(IndexPredicateAnalyzer.java:174) > at > org.apache.hadoop.hive.hbase.HBaseStorageHandler.decomposePredicate(HBaseStorageHandler.java:415) > > {code} > mvn test -Dtest=TestHBaseCliDriver -Dqfile=test.q -Dtest.output.overwrite > -DskipSparkTests -pl itests/qtest -Pitests > The failure in Q2 is probably related to HIVE-13815 since the expression (c1 > = true and c2 = true) is simplified to (c1 and c2) leading to the exception > above but the problem was probably there even before as Q1 is failing as well > with the same stacktrace. -- This message was sent by Atlassian Jira (v8.20.1#820001)