shangxinli opened a new pull request, #649: URL: https://github.com/apache/iceberg-cpp/pull/649
refactor: harden FileCleanupStrategy with retry and parallel deletes. Brings the C++ cleanup path closer to Java's behavior: - DeleteFile retries up to 3 times on FileIO-backed errors with linear backoff, stopping immediately on kNotFound (mirrors Java's stopRetryOn(NotFoundException) + retry(3)). Custom delete callbacks remain single-shot since their retry policy is opaque to us. - DeleteFiles now parallelizes per-file deletes through a small std::async-based RunInParallel wrapper, capped at 8 workers to avoid swamping FileIO. Replaces the existing serial loop and resolves the TODO(shangxinli) marker on bulk deletion (a true bulk FileIO API remains TODO). - DeleteWith() doc note clarifies that the supplied callback may be invoked concurrently and must be thread-safe. No behavioral test changes are needed -- the existing cleanup tests exercise the parallel path automatically when they delete more than one file, and continue to pass. -- 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. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected] --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
