You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hivemall.apache.org by "Makoto Yui (Jira)" <ji...@apache.org> on 2020/08/17 15:52:00 UTC

[jira] [Commented] (HIVEMALL-298) ClassCastException in array_remove UDF

    [ https://issues.apache.org/jira/browse/HIVEMALL-298?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17179080#comment-17179080 ] 

Makoto Yui commented on HIVEMALL-298:
-------------------------------------

maybe due to
https://github.com/apache/incubator-hivemall/blob/master/core/src/main/java/hivemall/tools/array/ArrayRemoveUDF.java#L109
and
https://github.com/apache/incubator-hivemall/blob/master/core/src/main/java/hivemall/tools/array/ArrayRemoveUDF.java#L88

copyListObject produced org.apache.hadoop.io.Text but returned valueOI is LazyStringObjectInspector.
https://github.com/apache/incubator-hivemall/blob/dceff6b8bc6c1e28016c75200e7a4cc1adf9cfa5/core/src/main/java/hivemall/utils/hadoop/HiveUtils.java#L531

> ClassCastException in array_remove UDF
> --------------------------------------
>
>                 Key: HIVEMALL-298
>                 URL: https://issues.apache.org/jira/browse/HIVEMALL-298
>             Project: Hivemall
>          Issue Type: Bug
>    Affects Versions: 0.6.0
>            Reporter: Makoto Yui
>            Assignee: Makoto Yui
>            Priority: Major
>             Fix For: 0.6.2
>
>
> -Need to fix a bug in [Converter](https://github.com/apache/incubator-hivemall/blob/master/core/src/main/java/hivemall/tools/array/ArrayRemoveUDF.java#L121) inputs.-
> {code}
> Caused by: org.apache.hadoop.hive.ql.metadata.HiveException: java.lang.ClassCastException: org.apache.hadoop.io.Text cannot be cast to org.apache.hadoop.hive.serde2.lazy.LazyString
>   at org.apache.hadoop.hive.ql.exec.ReduceSinkOperator.process(ReduceSinkOperator.java:397)
>   at org.apache.hadoop.hive.ql.exec.Operator.forward(Operator.java:897)
>   at org.apache.hadoop.hive.ql.exec.SelectOperator.process(SelectOperator.java:95)
>   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.MapOperator$MapOpCtx.forward(MapOperator.java:148)
>   at org.apache.hadoop.hive.ql.exec.MapOperator.process(MapOperator.java:547)
>   ... 20 more
> Caused by: java.lang.ClassCastException: org.apache.hadoop.io.Text cannot be cast to org.apache.hadoop.hive.serde2.lazy.LazyString
>   at org.apache.hadoop.hive.serde2.lazy.objectinspector.primitive.LazyStringObjectInspector.getPrimitiveWritableObject(LazyStringObjectInspector.java:51)
>   at org.apache.hadoop.hive.serde2.lazybinary.LazyBinarySerDe.serialize(LazyBinarySerDe.java:473)
>   at org.apache.hadoop.hive.serde2.lazybinary.LazyBinarySerDe.serialize(LazyBinarySerDe.java:581)
>   at org.apache.hadoop.hive.serde2.lazybinary.LazyBinarySerDe.serializeStruct(LazyBinarySerDe.java:283)
>   at org.apache.hadoop.hive.serde2.lazybinary.LazyBinarySerDe.serializeStruct(LazyBinarySerDe.java:243)
>   at org.apache.hadoop.hive.serde2.lazybinary.LazyBinarySerDe.serialize(LazyBinarySerDe.java:205)
>   at org.apache.hadoop.hive.ql.exec.ReduceSinkOperator.makeValueWritable(ReduceSinkOperator.java:534)
>   at org.apache.hadoop.hive.ql.exec.ReduceSinkOperator.process(ReduceSinkOperator.java:376)
>   ... 26 more
> {code}



--
This message was sent by Atlassian Jira
(v8.3.4#803005)