rdblue opened a new pull request #1446: URL: https://github.com/apache/iceberg/pull/1446
This fixes the tests that have been flaky in Java 11. The problem was that the `DeleteFileIndex` uses a map from partition spec ID to thread-local `StructLikeWrapper` for working with partition tuples. The map was being updated with concurrent calls to `computeIfAbsent`, resulting in a `ConcurrentModificationException`. That exception was causing a planning task to fail inside of `ParallelIterator`, which was not correctly checking for failed tasks. When a task failed, the files from the task were not added to the iterator's queue, which caused the flaky behavior. This PR also updates `ParallelIterator` to check for exceptions held by task futures when it checks task status to ensure that future issues will result in failures. The bug does not affect any released version of Iceberg because the underlying problem was in `DeleteFileIndex` that has not been included in a release. ---------------------------------------------------------------- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: [email protected] --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
