[ 
https://issues.apache.org/jira/browse/HUDI-9573?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Danny Chen updated HUDI-9573:
-----------------------------
    Description: 
Currently we see a few type casting errors in a few places:
{code:java}
org.apache.hudi.common.table.timeline.versioning.v2.CommitMetadataSerDeV2.deserialize(CommitMetadataSerDeV2.java:88)
at 
org.apache.hudi.common.table.timeline.HoodieTimeline.readNonEmptyInstantContent(HoodieTimeline.java:153)
at 
org.apache.hudi.common.table.timeline.HoodieTimeline.readRollbackPlan(HoodieTimeline.java:244)
at 
org.apache.hudi.metadata.HoodieTableMetadataUtil.getRollbackedCommits(HoodieTableMetadataUtil.java:2034)
... 30 more
Caused by: java.lang.ClassCastException: class 
org.apache.avro.generic.GenericData$Record cannot be cast to class 
org.apache.avro.specific.SpecificRecordBase 
(org.apache.avro.generic.GenericData$Record and 
org.apache.avro.specific.SpecificRecordBase are in unnamed module of loader 
'app'){code}

The reason is some JDK releases does now allow type coersion for instantces 
from different classloaders,
see issue https://github.com/apache/hudi/issues/13410 for more details.

  was:
Currently we see a few type casting errors in a few places:
{code:java}
org.apache.hudi.common.table.timeline.versioning.v2.CommitMetadataSerDeV2.deserialize(CommitMetadataSerDeV2.java:88)
at 
org.apache.hudi.common.table.timeline.HoodieTimeline.readNonEmptyInstantContent(HoodieTimeline.java:153)
at 
org.apache.hudi.common.table.timeline.HoodieTimeline.readRollbackPlan(HoodieTimeline.java:244)
at 
org.apache.hudi.metadata.HoodieTableMetadataUtil.getRollbackedCommits(HoodieTableMetadataUtil.java:2034)
... 30 more
Caused by: java.lang.ClassCastException: class 
org.apache.avro.generic.GenericData$Record cannot be cast to class 
org.apache.avro.specific.SpecificRecordBase 
(org.apache.avro.generic.GenericData$Record and 
org.apache.avro.specific.SpecificRecordBase are in unnamed module of loader 
'app'){code}

See issue https://github.com/apache/hudi/issues/13410 for more details.


> Inspect all the forced class casting in the repo
> ------------------------------------------------
>
>                 Key: HUDI-9573
>                 URL: https://issues.apache.org/jira/browse/HUDI-9573
>             Project: Apache Hudi
>          Issue Type: Improvement
>          Components: core
>            Reporter: Danny Chen
>            Priority: Major
>
> Currently we see a few type casting errors in a few places:
> {code:java}
> org.apache.hudi.common.table.timeline.versioning.v2.CommitMetadataSerDeV2.deserialize(CommitMetadataSerDeV2.java:88)
> at 
> org.apache.hudi.common.table.timeline.HoodieTimeline.readNonEmptyInstantContent(HoodieTimeline.java:153)
> at 
> org.apache.hudi.common.table.timeline.HoodieTimeline.readRollbackPlan(HoodieTimeline.java:244)
> at 
> org.apache.hudi.metadata.HoodieTableMetadataUtil.getRollbackedCommits(HoodieTableMetadataUtil.java:2034)
> ... 30 more
> Caused by: java.lang.ClassCastException: class 
> org.apache.avro.generic.GenericData$Record cannot be cast to class 
> org.apache.avro.specific.SpecificRecordBase 
> (org.apache.avro.generic.GenericData$Record and 
> org.apache.avro.specific.SpecificRecordBase are in unnamed module of loader 
> 'app'){code}
> The reason is some JDK releases does now allow type coersion for instantces 
> from different classloaders,
> see issue https://github.com/apache/hudi/issues/13410 for more details.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to