apache / apache/hudi

[SUPPORT] Hoodie MAGIC was written twice to a log file

Open
#8,887 7 comments 0 reactions 1 assignee Claimed by @danny0405 View on GitHub
area:reader area:table-service
Dominant language
Java
Stars
6.2k
Forks
2.5k
Avg merge
2d 8h
Merged PRs (30d)
111

Description

**Describe the problem you faced**

Hoodie MAGIC was written twice to a log file which led to "invalid block byte type found" when reading it during compaction.

**Environment Description**

* Hudi version : 0.13.1

* Flink version : 1.16.2

* Hadoop version : 3.3.4

* Storage (HDFS/S3/GCS..) : S3

**Additional context**

image

**Stacktrace**

```
2023-06-05 14:05:27 [pool-415-thread-1] INFO org.apache.hudi.common.table.log.AbstractHoodieLogRecordReader [] - Scanning log file HoodieLogFile{pathStr='s3a://path-to-table/dt=2023-04-30/.249ca6d7-56a5-4d55-8fc9-f6f64d7ea5fd_20230605060331702.log.1_0-1-0', fileLen=-1}
2023-06-05 14:05:27 [pool-415-thread-1] ERROR org.apache.hudi.common.table.log.AbstractHoodieLogRecordReader [] - Got exception when reading log file
java.lang.IllegalArgumentException: Invalid block byte type found 1475936256
at org.apache.hudi.common.util.ValidationUtils.checkArgument(ValidationUtils.java:40) ~[blob_p-ee60c0a3bdb8ff1daaadb895ffc6261ebff73895-1a96e7b45c223e677dd07339cc686979:?]
at org.apache.hudi.common.table.log.HoodieLogFileReader.tryReadBlockType(HoodieLogFileReader.java:268) ~[blob_p-ee60c0a3bdb8ff1daaadb895ffc6261ebff73895-1a96e7b45c223e677dd07339cc686979:?]
at org.apache.hudi.common.table.log.HoodieLogFileReader.readBlock(HoodieLogFileReader.java:178) ~[blob_p-ee60c0a3bdb8ff1daaadb895ffc6261ebff73895-1a96e7b45c223e677dd07339cc686979:?]
at org.apache.hudi.common.table.log.HoodieLogFileReader.next(HoodieLogFileReader.java:411) ~[blob_p-ee60c0a3bdb8ff1daaadb895ffc6261ebff73895-1a96e7b45c223e677dd07339cc686979:?]
at org.apache.hudi.common.table.log.HoodieLogFormatReader.next(HoodieLogFormatReader.java:123) ~[blob_p-ee60c0a3bdb8ff1daaadb895ffc6261ebff73895-1a96e7b45c223e677dd07339cc686979:?]
at org.apache.hudi.common.table.log.AbstractHoodieLogRecordReader.scanInternalV1(AbstractHoodieLogRecordReader.java:253) ~[blob_p-ee60c0a3bdb8ff1daaadb895ffc6261ebff73895-1a96e7b45c223e677dd07339cc686979:?]
at org.apache.hudi.common.table.log.AbstractHoodieLogRecordReader.scanInternal(AbstractHoodieLogRecordReader.java:223) ~[blob_p-ee60c0a3bdb8ff1daaadb895ffc6261ebff73895-1a96e7b45c223e677dd07339cc686979:?]
at org.apache.hudi.common.table.log.HoodieMergedLogRecordScanner.performScan(HoodieMergedLogRecordScanner.java:198) ~[blob_p-ee60c0a3bdb8ff1daaadb895ffc6261ebff73895-1a96e7b45c223e677dd07339cc686979:?]
at org.apache.hudi.common.table.log.HoodieMergedLogRecordScanner.(HoodieMergedLogRecordScanner.java:114) ~[blob_p-ee60c0a3bdb8ff1daaadb895ffc6261ebff73895-1a96e7b45c223e677dd07339cc686979:?]
at org.apache.hudi.common.table.log.HoodieMergedLogRecordScanner.(HoodieMergedLogRecordScanner.java:73) ~[blob_p-ee60c0a3bdb8ff1daaadb895ffc6261ebff73895-1a96e7b45c223e677dd07339cc686979:?]
at org.apache.hudi.common.table.log.HoodieMergedLogRecordScanner$Builder.build(HoodieMergedLogRecordScanner.java:464) ~[blob_p-ee60c0a3bdb8ff1daaadb895ffc6261ebff73895-1a96e7b45c223e677dd07339cc686979:?]
at org.apache.hudi.table.action.compact.HoodieCompactor.compact(HoodieCompactor.java:204) ~[blob_p-ee60c0a3bdb8ff1daaadb895ffc6261ebff73895-1a96e7b45c223e677dd07339cc686979:?]
at org.apache.hudi.table.action.compact.HoodieCompactor.compact(HoodieCompactor.java:144) ~[blob_p-ee60c0a3bdb8ff1daaadb895ffc6261ebff73895-1a96e7b45c223e677dd07339cc686979:?]
at org.apache.hudi.sink.compact.CompactOperator.doCompaction(CompactOperator.java:133) ~[blob_p-ee60c0a3bdb8ff1daaadb895ffc6261ebff73895-1a96e7b45c223e677dd07339cc686979:?]
at org.apache.hudi.sink.compact.CompactOperator.lambda$processElement$0(CompactOperator.java:116) ~[blob_p-ee60c0a3bdb8ff1daaadb895ffc6261ebff73895-1a96e7b45c223e677dd07339cc686979:?]
at org.apache.hudi.sink.utils.NonThrownExecutor.lambda$wrapAction$0(NonThrownExecutor.java:130) ~[blob_p-ee60c0a3bdb8ff1daaadb895ffc6261ebff73895-1a96e7b45c223e677dd07339cc686979:?]
at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) [?:?]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) [?:?]
at java.lang.Thread.run(Unknown Source) [?:?]
2023-06-05 14:05:27 [pool-415-thread-1] ERROR org.apache.hudi.sink.compact.CompactOperator [] - Executor executes action [Execute compaction for instant 20230605113340155 from task 0] error
org.apache.hudi.exception.HoodieException: Exception when reading log file
at org.apache.hudi.common.table.log.AbstractHoodieLogRecordReader.scanInternalV1(AbstractHoodieLogRecordReader.java:374) ~[blob_p-ee60c0a3bdb8ff1daaadb895ffc6261ebff73895-1a96e7b45c223e677dd07339cc686979:?]
at org.apache.hudi.common.table.log.AbstractHoodieLogRecordReader.scanInternal(AbstractHoodieLogRecordReader.java:223) ~[blob_p-ee60c0a3bdb8ff1daaadb895ffc6261ebff73895-1a96e7b45c223e677dd07339cc686979:?]
at org.apache.hudi.common.table.log.HoodieMergedLogRecordScanner.performScan(HoodieMergedLogRecordScanner.java:198) ~[blob_p-ee60c0a3bdb8ff1daaadb895ffc6261ebff73895-1a96e7b45c223e677dd07339cc686979:?]
at org.apache.hudi.common.table.log.HoodieMergedLogRecordScanner.(HoodieMergedLogRecordScanner.java:114) ~[blob_p-ee60c0a3bdb8ff1daaadb895ffc6261ebff73895-1a96e7b45c223e677dd07339cc686979:?]
at org.apache.hudi.common.table.log.HoodieMergedLogRecordScanner.(HoodieMergedLogRecordScanner.java:73) ~[blob_p-ee60c0a3bdb8ff1daaadb895ffc6261ebff73895-1a96e7b45c223e677dd07339cc686979:?]
at org.apache.hudi.common.table.log.HoodieMergedLogRecordScanner$Builder.build(HoodieMergedLogRecordScanner.java:464) ~[blob_p-ee60c0a3bdb8ff1daaadb895ffc6261ebff73895-1a96e7b45c223e677dd07339cc686979:?]
at org.apache.hudi.table.action.compact.HoodieCompactor.compact(HoodieCompactor.java:204) ~[blob_p-ee60c0a3bdb8ff1daaadb895ffc6261ebff73895-1a96e7b45c223e677dd07339cc686979:?]
at org.apache.hudi.table.action.compact.HoodieCompactor.compact(HoodieCompactor.java:144) ~[blob_p-ee60c0a3bdb8ff1daaadb895ffc6261ebff73895-1a96e7b45c223e677dd07339cc686979:?]
at org.apache.hudi.sink.compact.CompactOperator.doCompaction(CompactOperator.java:133) ~[blob_p-ee60c0a3bdb8ff1daaadb895ffc6261ebff73895-1a96e7b45c223e677dd07339cc686979:?]
at org.apache.hudi.sink.compact.CompactOperator.lambda$processElement$0(CompactOperator.java:116) ~[blob_p-ee60c0a3bdb8ff1daaadb895ffc6261ebff73895-1a96e7b45c223e677dd07339cc686979:?]
at org.apache.hudi.sink.utils.NonThrownExecutor.lambda$wrapAction$0(NonThrownExecutor.java:130) ~[blob_p-ee60c0a3bdb8ff1daaadb895ffc6261ebff73895-1a96e7b45c223e677dd07339cc686979:?]
at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) [?:?]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) [?:?]
at java.lang.Thread.run(Unknown Source) [?:?]
Caused by: java.lang.IllegalArgumentException: Invalid block byte type found 1475936256
at org.apache.hudi.common.util.ValidationUtils.checkArgument(ValidationUtils.java:40) ~[blob_p-ee60c0a3bdb8ff1daaadb895ffc6261ebff73895-1a96e7b45c223e677dd07339cc686979:?]
at org.apache.hudi.common.table.log.HoodieLogFileReader.tryReadBlockType(HoodieLogFileReader.java:268) ~[blob_p-ee60c0a3bdb8ff1daaadb895ffc6261ebff73895-1a96e7b45c223e677dd07339cc686979:?]
at org.apache.hudi.common.table.log.HoodieLogFileReader.readBlock(HoodieLogFileReader.java:178) ~[blob_p-ee60c0a3bdb8ff1daaadb895ffc6261ebff73895-1a96e7b45c223e677dd07339cc686979:?]
at org.apache.hudi.common.table.log.HoodieLogFileReader.next(HoodieLogFileReader.java:411) ~[blob_p-ee60c0a3bdb8ff1daaadb895ffc6261ebff73895-1a96e7b45c223e677dd07339cc686979:?]
at org.apache.hudi.common.table.log.HoodieLogFormatReader.next(HoodieLogFormatReader.java:123) ~[blob_p-ee60c0a3bdb8ff1daaadb895ffc6261ebff73895-1a96e7b45c223e677dd07339cc686979:?]
at org.apache.hudi.common.table.log.AbstractHoodieLogRecordReader.scanInternalV1(AbstractHoodieLogRecordReader.java:253) ~[blob_p-ee60c0a3bdb8ff1daaadb895ffc6261ebff73895-1a96e7b45c223e677dd07339cc686979:?]
```

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.