You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hudi.apache.org by "pengzhiwei (Jira)" <ji...@apache.org> on 2021/06/17 03:50:00 UTC
[jira] [Created] (HUDI-2033) ClassCastException Throw When
PreCombineField Is String Type
pengzhiwei created HUDI-2033:
--------------------------------
Summary: ClassCastException Throw When PreCombineField Is String Type
Key: HUDI-2033
URL: https://issues.apache.org/jira/browse/HUDI-2033
Project: Apache Hudi
Issue Type: Bug
Components: Spark Integration
Reporter: pengzhiwei
Fix For: 0.9.0
When the preCombineField is string type:
{code:java}
create table h0 (
id int,
name string,
c string
) using hudi
options(
primaryKey = 'id',
preCombineField = 'c'
);
{code}
the follow exception throw out when execute merge into statement.
{code:java}
Caused by: java.lang.ClassCastException: java.lang.String cannot be cast to org.apache.avro.util.Utf8Caused by: java.lang.ClassCastException: java.lang.String cannot be cast to org.apache.avro.util.Utf8 at org.apache.avro.util.Utf8.compareTo(Utf8.java:28) at org.apache.hudi.common.model.DefaultHoodieRecordPayload.needUpdatingPersistedRecord(DefaultHoodieRecordPayload.java:105) at org.apache.spark.sql.hudi.command.payload.ExpressionPayload.protected$needUpdatingPersistedRecord(ExpressionPayload.scala:98) at org.apache.spark.sql.hudi.command.payload.ExpressionPayload$$anonfun$combineAndGetUpdateValue$4.apply(ExpressionPayload.scala:98) at org.apache.spark.sql.hudi.command.payload.ExpressionPayload$$anonfun$combineAndGetUpdateValue$4.apply(ExpressionPayload.scala:88)
{code}
--
This message was sent by Atlassian Jira
(v8.3.4#803005)