[
https://issues.apache.org/jira/browse/HIVE-24765?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17923586#comment-17923586
]
Denys Kuzmenko commented on HIVE-24765:
---------------------------------------
thanks for checking, [~ryu_kobayashi]!
> ClassCastException with AND or OR condition
> -------------------------------------------
>
> Key: HIVE-24765
> URL: https://issues.apache.org/jira/browse/HIVE-24765
> Project: Hive
> Issue Type: Bug
> Reporter: Ryu Kobayashi
> Assignee: Ryu Kobayashi
> Priority: Major
> Labels: pull-request-available
> Fix For: NA
>
> Time Spent: 50m
> Remaining Estimate: 0h
>
> I previously created the following ticket:
> https://issues.apache.org/jira/browse/HIVE-11708
> However, it turns out that an error occurs under the following conditions:
> {code:java}
> CREATE TABLE tbl(
> id int,
> flg int
> );
> set hive.cbo.enable=true;
> SELECT * FROM tbl
> WHERE id >= 100 AND flg = TRUE;
> java.io.IOException: java.lang.ClassCastException:
> org.apache.hadoop.hive.serde2.lazy.LazyInteger cannot be cast to
> org.apache.hadoop.io.BooleanWritable
> at org.apache.hadoop.hive.ql.exec.FetchTask.fetch(FetchTask.java:165)
> at org.apache.hadoop.hive.ql.Driver.getResults(Driver.java:2204)
> at org.apache.hadoop.hive.cli.CliDriver.processLocalCmd(CliDriver.java:253)
> at org.apache.hadoop.hive.cli.CliDriver.processCmd(CliDriver.java:184)
> at org.apache.hadoop.hive.cli.CliDriver.processLine(CliDriver.java:403)
> at org.apache.hadoop.hive.cli.CliDriver.executeDriver(CliDriver.java:820)
> at org.apache.hadoop.hive.cli.CliDriver.run(CliDriver.java:760)
> at org.apache.hadoop.hive.cli.CliDriver.main(CliDriver.java:687)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
> at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> at java.lang.reflect.Method.invoke(Method.java:498)
> at org.apache.hadoop.util.RunJar.run(RunJar.java:244)
> at org.apache.hadoop.util.RunJar.main(RunJar.java:158)
> Caused by: java.lang.ClassCastException:
> org.apache.hadoop.hive.serde2.lazy.LazyInteger cannot be cast to
> org.apache.hadoop.io.BooleanWritable
> at
> org.apache.hadoop.hive.serde2.objectinspector.primitive.WritableBooleanObjectInspector.get(WritableBooleanObjectInspector.java:36)
> at
> org.apache.hadoop.hive.ql.udf.generic.GenericUDFOPAnd.evaluate(GenericUDFOPAnd.java:69)
> at
> org.apache.hadoop.hive.ql.exec.ExprNodeGenericFuncEvaluator._evaluate(ExprNodeGenericFuncEvaluator.java:187)
> at
> org.apache.hadoop.hive.ql.exec.ExprNodeEvaluator.evaluate(ExprNodeEvaluator.java:80)
> at
> org.apache.hadoop.hive.ql.exec.ExprNodeEvaluator.evaluate(ExprNodeEvaluator.java:68)
> at
> org.apache.hadoop.hive.ql.exec.FilterOperator.process(FilterOperator.java:112)
> at org.apache.hadoop.hive.ql.exec.Operator.forward(Operator.java:897)
> at
> org.apache.hadoop.hive.ql.exec.TableScanOperator.process(TableScanOperator.java:130)
> at
> org.apache.hadoop.hive.ql.exec.FetchOperator.pushRow(FetchOperator.java:434)
> at
> org.apache.hadoop.hive.ql.exec.FetchOperator.pushRow(FetchOperator.java:426)
> at org.apache.hadoop.hive.ql.exec.FetchTask.fetch(FetchTask.java:147)
> ... 13 more
> {code}
> I know this is a cast issue as well as the previous issue.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)