Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Bug]: org.apache.iceberg.exceptions.ValidationException: Missing required files to delete #2454

Closed
1 of 2 tasks
Tracked by #2448 ...
XiaoGerGer opened this issue Dec 20, 2023 · 1 comment · Fixed by #2460
Closed
1 of 2 tasks
Tracked by #2448 ...
Labels
type:bug Something isn't working

Comments

@XiaoGerGer
Copy link

What happened?

/data/mandt=800/00000-0-af14c523-f30a-4725-9ce0-9a423d8e90da-00935.parquet,hdfs://nameservice/iceberg-warehouse/ice/ods_xx.db/ods_vbrp/data/mandt=800/00000-0-af14c523-f30a-4725-9ce0-9a423d8e90da-02583.parquet,hdfs://nameservice/iceberg-warehouse/ice/ods_xx.db/ods_vbrp/data/mandt=900/00000-0-af14c523-f30a-4725-9ce0-9a423d8e90da-00977.parquet
at org.apache.iceberg.exceptions.ValidationException.check(ValidationException.java:49) ~[iceberg-api-1.3.0.jar:?]
at org.apache.iceberg.ManifestFilterManager.validateRequiredDeletes(ManifestFilterManager.java:237) ~[iceberg-core-1.3.0.jar:?]
at org.apache.iceberg.ManifestFilterManager.filterManifests(ManifestFilterManager.java:199) ~[iceberg-core-1.3.0.jar:?]
at org.apache.iceberg.MergingSnapshotProducer.apply(MergingSnapshotProducer.java:860) ~[iceberg-core-1.3.0.jar:?]
at org.apache.iceberg.SnapshotProducer.apply(SnapshotProducer.java:217) ~[iceberg-core-1.3.0.jar:?]
at org.apache.iceberg.SnapshotProducer.lambda$commit$2(SnapshotProducer.java:366) ~[iceberg-core-1.3.0.jar:?]
at org.apache.iceberg.util.Tasks$Builder.runTaskWithRetry(Tasks.java:413) ~[iceberg-core-1.3.0.jar:?]
at org.apache.iceberg.util.Tasks$Builder.runSingleThreaded(Tasks.java:219) ~[iceberg-core-1.3.0.jar:?]
at org.apache.iceberg.util.Tasks$Builder.run(Tasks.java:203) ~[iceberg-core-1.3.0.jar:?]
at org.apache.iceberg.util.Tasks$Builder.run(Tasks.java:196) ~[iceberg-core-1.3.0.jar:?]
at org.apache.iceberg.SnapshotProducer.commit(SnapshotProducer.java:364) ~[iceberg-core-1.3.0.jar:?]
at com.netease.arctic.op.ArcticUpdate.commit(ArcticUpdate.java:143) ~[amoro-core-0.7.0-SNAPSHOT.jar:?]
at com.netease.arctic.server.optimizing.maintainer.IcebergTableMaintainer.clearInternalTableDanglingDeleteFiles(IcebergTableMaintainer.java:374) ~[amoro-ams-server-0.7.0-SNAPSHOT.jar:?]
at com.netease.arctic.server.optimizing.maintainer.IcebergTableMaintainer.cleanDanglingDeleteFiles(IcebergTableMaintainer.java:281) ~[amoro-ams-server-0.7.0-SNAPSHOT.jar:?]
at com.netease.arctic.server.optimizing.maintainer.IcebergTableMaintainer.cleanOrphanFiles(IcebergTableMaintainer.java:143) ~[amoro-ams-server-0.7.0-SNAPSHOT.jar:?]
at com.netease.arctic.server.table.executor.OrphanFilesCleaningExecutor.execute(OrphanFilesCleaningExecutor.java:61) ~[amoro-ams-server-0.7.0-SNAPSHOT.jar:?]
at com.netease.arctic.server.table.executor.BaseTableExecutor.executeTask(BaseTableExecutor.java:74) ~[amoro-ams-server-0.7.0-SNAPSHOT.jar:?]
at com.netease.arctic.server.table.executor.BaseTableExecutor.lambda$scheduleIfNecessary$4(BaseTableExecutor.java:83) ~[amoro-ams-server-0.7.0-SNAPSHOT.jar:?]
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) [?:1.8.0_392]
at java.util.concurrent.FutureTask.run(FutureTask.java:266) [?:1.8.0_392]
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:180) [?:1.8.0_392]
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293) [?:1.8.0_392]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) [?:1.8.0_392]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) [?:1.8.0_392]
at java.lang.Thread.run(Thread.java:750) [?:1.8.0_392]
2023-12-20 02:21:10,441 WARN [async-orphan-files-cleaning-executor-5] [com.netease.arctic.server.optimizing.maintainer.IcebergTableMaintainer] [] - Iceberg RewriteFiles commit failed on clear danglingDeleteFiles, but ignore
org.apache.iceberg.exceptions.ValidationException: Missing required files to delete: hdfs://nameservice/iceberg-warehouse/ice/ods_xx.db/ods_vbpa/data/mandt_bucket_12=10/00000-0-d8319110-a479-4971-ad15-88a078c1c921-02030.parquet,hdfs:

Affects Versions

master-snapshot [ at 2023-12-08 ]

What engines are you seeing the problem on?

Optimizer

How to reproduce

No response

Relevant log output

No response

Anything else

No response

Are you willing to submit a PR?

  • Yes I am willing to submit a PR!

Code of Conduct

  • I agree to follow this project's Code of Conduct
@wangtaohz
Copy link
Contributor

Catch the same exception when self-optimizing committing,

2023-12-13 01:26:20,352 WARN [async-optimizing-commit-executor-4] [com.netease.arctic.server.optimizing.UnKeyedTableCommit] [] - Iceberg RewriteFiles commit failed, but ignore

org.apache.iceberg.exceptions.ValidationException: Missing required files to delete:xxxxxxxxx

at org.apache.iceberg.exceptions.ValidationException.check(ValidationException.java:49) ~[iceberg-api-1.3.0.jar:?]

         at org.apache.iceberg.ManifestFilterManager.validateRequiredDeletes(ManifestFilterManager.java:237) ~[iceberg-core-1.3.0.jar:?]

         at org.apache.iceberg.ManifestFilterManager.filterManifests(ManifestFilterManager.java:199) ~[iceberg-core-1.3.0.jar:?]

         at org.apache.iceberg.MergingSnapshotProducer.apply(MergingSnapshotProducer.java:860) ~[iceberg-core-1.3.0.jar:?]

         at org.apache.iceberg.SnapshotProducer.apply(SnapshotProducer.java:217) ~[iceberg-core-1.3.0.jar:?]

         at org.apache.iceberg.SnapshotProducer.lambda$commit$2(SnapshotProducer.java:366) ~[iceberg-core-1.3.0.jar:?]

         at org.apache.iceberg.util.Tasks$Builder.runTaskWithRetry(Tasks.java:413) ~[iceberg-core-1.3.0.jar:?]

         at org.apache.iceberg.util.Tasks$Builder.runSingleThreaded(Tasks.java:219) ~[iceberg-core-1.3.0.jar:?]

         at org.apache.iceberg.util.Tasks$Builder.run(Tasks.java:203) ~[iceberg-core-1.3.0.jar:?]

         at org.apache.iceberg.util.Tasks$Builder.run(Tasks.java:196) ~[iceberg-core-1.3.0.jar:?]

         at org.apache.iceberg.SnapshotProducer.commit(SnapshotProducer.java:364) ~[iceberg-core-1.3.0.jar:?]

         at com.netease.arctic.op.ArcticUpdate.commit(ArcticUpdate.java:143) ~[amoro-core-0.7.0-SNAPSHOT.jar:?]

         at com.netease.arctic.server.optimizing.UnKeyedTableCommit.removeOldDeleteFiles(UnKeyedTableCommit.java:279) ~[amoro-ams-server-0.7.0-SNAPSHOT.jar:?]

         at com.netease.arctic.server.optimizing.UnKeyedTableCommit.commit(UnKeyedTableCommit.java:220) ~[amoro-ams-server-0.7.0-SNAPSHOT.jar:?]

         at com.netease.arctic.server.optimizing.OptimizingQueue$TableOptimizingProcess.commit(OptimizingQueue.java:513) ~[amoro-ams-server-0.7.0-SNAPSHOT.jar:?]

         at com.netease.arctic.server.table.executor.OptimizingCommitExecutor.execute(OptimizingCommitExecutor.java:35) ~[amoro-ams-server-0.7.0-SNAPSHOT.jar:?]

         at com.netease.arctic.server.table.executor.BaseTableExecutor.executeTask(BaseTableExecutor.java:74) ~[amoro-ams-server-0.7.0-SNAPSHOT.jar:?]

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
type:bug Something isn't working
Projects
None yet
2 participants