Hi, when writing to Hudi MOR table in Flink(1.16, ...
# troubleshooting
i
Hi, when writing to Hudi MOR table in Flink(1.16, with Hive 3.1.2, Hadoop 3..3.2), I am running into the issue below, I tried to re-package hudi with hbase built from hadoop 3.x based on this https://hudi.apache.org/docs/faq but it doesn't help. I have verified that the hudi-flink budle jar does have Hfile class, but for some reason flink still doesn't pick it up, can you suggest some tips to debug classloader issues?
java.lang.NoClassDefFoundError: Could not initialize class <http://org.apache.hudi.org.apache.hadoop.hbase.io|org.apache.hudi.org.apache.hadoop.hbase.io>.hfile.HFile
at org.apache.hudi.common.table.log.block.HoodieHFileDataBlock.serializeRecords(HoodieHFileDataBlock.java:142) ~[blob_p-c9f4c7630afc04695662e151731000483462dba7-0340755a17eb0d9fd4622724ef5e2628:?]
at org.apache.hudi.common.table.log.block.HoodieDataBlock.getContentBytes(HoodieDataBlock.java:111) ~[blob_p-c9f4c7630afc04695662e151731000483462dba7-0340755a17eb0d9fd4622724ef5e2628:?]
at org.apache.hudi.common.table.log.HoodieLogFormatWriter.appendBlocks(HoodieLogFormatWriter.java:158) ~[blob_p-c9f4c7630afc04695662e151731000483462dba7-0340755a17eb0d9fd4622724ef5e2628:?]
at <http://org.apache.hudi.io|org.apache.hudi.io>.HoodieAppendHandle.appendDataAndDeleteBlocks(HoodieAppendHandle.java:464) ~[blob_p-c9f4c7630afc04695662e151731000483462dba7-0340755a17eb0d9fd4622724ef5e2628:?]
at <http://org.apache.hudi.io|org.apache.hudi.io>.HoodieAppendHandle.doAppend(HoodieAppendHandle.java:437) ~[blob_p-c9f4c7630afc04695662e151731000483462dba7-0340755a17eb0d9fd4622724ef5e2628:?]
at org.apache.hudi.table.action.commit.delta.BaseFlinkDeltaCommitActionExecutor.handleUpdate(BaseFlinkDeltaCommitActionExecutor.java:54) ~[blob_p-c9f4c7630afc04695662e151731000483462dba7-0340755a17eb0d9fd4622724ef5e2628:?]
at org.apache.hudi.table.action.commit.BaseFlinkCommitActionExecutor.handleUpsertPartition(BaseFlinkCommitActionExecutor.java:195) ~[blob_p-c9f4c7630afc04695662e151731000483462dba7-0340755a17eb0d9fd4622724ef5e2628:?]
at org.apache.hudi.table.action.commit.BaseFlinkCommitActionExecutor.execute(BaseFlinkCommitActionExecutor.java:107) ~[blob_p-c9f4c7630afc04695662e151731000483462dba7-0340755a17eb0d9fd4622724ef5e2628:?]
at org.apache.hudi.table.action.commit.delta.FlinkUpsertPreppedDeltaCommitActionExecutor.execute(FlinkUpsertPreppedDeltaCommitActionExecutor.java:52) ~[blob_p-c9f4c7630afc04695662e151731000483462dba7-0340755a17eb0d9fd4622724ef5e2628:?]
at org.apache.hudi.table.HoodieFlinkMergeOnReadTable.upsertPrepped(HoodieFlinkMergeOnReadTable.java:81) ~[blob_p-c9f4c7630afc04695662e151731000483462dba7-0340755a17eb0d9fd4622724ef5e2628:?]
at org.apache.hudi.client.HoodieFlinkWriteClient.lambda$upsertPreppedRecords$4(HoodieFlinkWriteClient.java:167) ~[blob_p-c9f4c7630afc04695662e151731000483462dba7-0340755a17eb0d9fd4622724ef5e2628:?]
at java.util.stream.ReferencePipeline$3$1.accept(Unknown Source) ~[?:?]
at java.util.HashMap$ValueSpliterator.forEachRemaining(Unknown Source) ~[?:?]
at java.util.stream.AbstractPipeline.copyInto(Unknown Source) ~[?:?]
at java.util.stream.AbstractPipeline.wrapAndCopyInto(Unknown Source) ~[?:?]
at java.util.stream.ReduceOps$ReduceTask.doLeaf(Unknown Source) ~[?:?]
at java.util.stream.ReduceOps$ReduceTask.doLeaf(Unknown Source) ~[?:?]
at java.util.stream.AbstractTask.compute(Unknown Source) ~[?:?]
at java.util.concurrent.CountedCompleter.exec(Unknown Source) ~[?:?]
at java.util.concurrent.ForkJoinTask.doExec(Unknown Source) ~[?:?]
at java.util.concurrent.ForkJoinTask.doInvoke(Unknown Source) ~[?:?]
at java.util.concurrent.ForkJoinTask.invoke(Unknown Source) ~[?:?]
at java.util.stream.ReduceOps$ReduceOp.evaluateParallel(Unknown Source) ~[?:?]
at java.util.stream.AbstractPipeline.evaluate(Unknown Source) ~[?:?]
at java.util.stream.ReferencePipeline.collect(Unknown Source) ~[?:?]
at org.apache.hudi.client.HoodieFlinkWriteClient.upsertPreppedRecords(HoodieFlinkWriteClient.java:170) ~[blob_p-c9f4c7630afc04695662e151731000483462dba7-0340755a17eb0d9fd4622724ef5e2628:?]
at org.apache.hudi.metadata.FlinkHoodieBackedTableMetadataWriter.commit(FlinkHoodieBackedTableMetadataWriter.java:166) ~[blob_p-c9f4c7630afc04695662e151731000483462dba7-0340755a17eb0d9fd4622724ef5e2628:?]
at org.apache.hudi.metadata.HoodieBackedTableMetadataWriter.processAndCommit(HoodieBackedTableMetadataWriter.java:830) ~[blob_p-c9f4c7630afc04695662e151731000483462dba7-0340755a17eb0d9fd4622724ef5e2628:?]
at org.apache.hudi.metadata.HoodieBackedTableMetadataWriter.update(HoodieBackedTableMetadataWriter.java:897) ~[blob_p-c9f4c7630afc04695662e151731000483462dba7-0340755a17eb0d9fd4622724ef5e2628:?]
at org.apache.hudi.client.HoodieFlinkTableServiceClient.writeTableMetadata(HoodieFlinkTableServiceClient.java:179) ~[blob_p-c9f4c7630afc04695662e151731000483462dba7-0340755a17eb0d9fd4622724ef5e2628:?]
at org.apache.hudi.client.HoodieFlinkWriteClient.writeTableMetadata(HoodieFlinkWriteClient.java:279) ~[blob_p-c9f4c7630afc04695662e151731000483462dba7-0340755a17eb0d9fd4622724ef5e2628:?]
at org.apache.hudi.client.BaseHoodieWriteClient.commit(BaseHoodieWriteClient.java:282) ~[blob_p-c9f4c7630afc04695662e151731000483462dba7-0340755a17eb0d9fd4622724ef5e2628:?]
at org.apache.hudi.client.BaseHoodieWriteClient.commitStats(BaseHoodieWriteClient.java:233) ~[blob_p-c9f4c7630afc04695662e151731000483462dba7-0340755a17eb0d9fd4622724ef5e2628:?]
at org.apache.hudi.client.HoodieFlinkWriteClient.commit(HoodieFlinkWriteClient.java:111) ~[blob_p-c9f4c7630afc04695662e151731000483462dba7-0340755a17eb0d9fd4622724ef5e2628:?]
at org.apache.hudi.client.HoodieFlinkWriteClient.commit(HoodieFlinkWriteClient.java:74) ~[blob_p-c9f4c7630afc04695662e151731000483462dba7-0340755a17eb0d9fd4622724ef5e2628:?]
at org.apache.hudi.client.BaseHoodieWriteClient.commit(BaseHoodieWriteClient.java:199) ~[blob_p-c9f4c7630afc04695662e151731000483462dba7-0340755a17eb0d9fd4622724ef5e2628:?]
at org.apache.hudi.sink.StreamWriteOperatorCoordinator.doCommit(StreamWriteOperatorCoordinator.java:537) ~[blob_p-c9f4c7630afc04695662e151731000483462dba7-0340755a17eb0d9fd4622724ef5e2628:?]
at org.apache.hudi.sink.StreamWriteOperatorCoordinator.commitInstant(StreamWriteOperatorCoordinator.java:513) ~[blob_p-c9f4c7630afc04695662e151731000483462dba7-0340755a17eb0d9fd4622724ef5e2628:?]
at org.apache.hudi.sink.StreamWriteOperatorCoordinator.commitInstant(StreamWriteOperatorCoordinator.java:484) ~[blob_p-c9f4c7630afc04695662e151731000483462dba7-0340755a17eb0d9fd4622724ef5e2628:?]
at org.apache.hudi.sink.StreamWriteOperatorCoordinator.lambda$initInstant$6(StreamWriteOperatorCoordinator.java:402) ~[blob_p-c9f4c7630afc04695662e151731000483462dba7-0340755a17eb0d9fd4622724ef5e2628:?]
at org.apache.hudi.sink.utils.NonThrownExecutor.lambda$wrapAction$0(NonThrownExecutor.java:130) ~[blob_p-c9f4c7630afc04695662e151731000483462dba7-0340755a17eb0d9fd4622724ef5e2628:?]
at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) [?:?]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) [?:?]
at java.lang.Thread.run(Unknown Source) [?:?]
(edited)