[
https://issues.apache.org/jira/browse/HIVE-22640?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17014934#comment-17014934
]
Denys Kuzmenko commented on HIVE-22640:
---------------------------------------
[~kgyrtkirk], [~rameshkumar] thank you for the review!
I think, decimal64 optimizations should apply for virtual columns as well.
createColumnVectorFromRowColumnTypeInfos() is used also for regular column to
create a proper vector (Decimal64ColumnVector/DecimalColumnVector) depending on
`hive.vectorized.input.format.supports.enabled=decimal_64`.
> Decimal64ColumnVector: ClassCastException when partition column type is
> Decimal
> -------------------------------------------------------------------------------
>
> Key: HIVE-22640
> URL: https://issues.apache.org/jira/browse/HIVE-22640
> Project: Hive
> Issue Type: Bug
> Reporter: Denys Kuzmenko
> Assignee: Denys Kuzmenko
> Priority: Major
> Attachments: HIVE-22640.1.patch, HIVE-22640.2.patch,
> HIVE-22640.3.patch, HIVE-22640.4.patch
>
>
> Problem statement:
> {code}
> CREATE EXTERNAL TABLE output (id DECIMAL(4,0), foo VARCHAR(10))
> PARTITIONED BY (nr_bank *decimal*(4,0))
> STORED AS ORC TBLPROPERTIES ('orc.compress'='ZLIB')
> insert into output PARTITION (nr_bank=88) values (1,'test');
> insert into output PARTITION (nr_bank=8801) values (1,'8801');
> select count(*), nr_bank from sdlint.output group by nr_bank;
> {code}
> The above query fails with:
> {code}
> Caused by: java.lang.ClassCastException:
> org.apache.hadoop.hive.ql.exec.vector.DecimalColumnVector cannot be cast to
> org.apache.hadoop.hive.ql.exec.vector.LongColumnVector
> at
> org.apache.hadoop.hive.ql.exec.vector.expressions.FuncLongToDecimal.evaluate(FuncLongToDecimal.java:58)
> {code}
--
This message was sent by Atlassian Jira
(v8.3.4#803005)