imbajin opened a new pull request, #803: URL: https://github.com/apache/hugegraph-toolchain/pull/803
## Purpose of the PR A restore worker could fail while reading a damaged JSON/ZIP file or inserting records, yet the command would report success and clean its input directory. Worker failures now reach the existing CLI error path after all submitted work finishes, and failed restores retain their inputs. Found in the [Toolchain integration report](https://github.com/hugegraph/hugegraph-toolchain/pull/47#issuecomment-6064536763).  ## Main Changes - Propagate restore worker failures through their Futures. - Drain all tasks before reporting the first failure and retaining later failures as suppressed exceptions. - Preserve interruption through cleanup and cover damaged input, rejected writes, failure cleanup and valid empty backups. No new backup format or missing-file inference is added. ## Verifying these changes - [ ] Trivial rework / code cleanup without any test coverage. (No Need) - [ ] Already covered by existing tests. - [x] Need tests and can be verified as follows: - Targeted Java 17 Maven tests pass with actual corrupt JSON/ZIP files, asynchronous failures and interruption. The original production classes fail the corresponding negative controls. - The legitimate empty backup remains valid; clean=true retains input after a failed restore. - Checkstyle and three independent read-only reviews passed. - A packaged command against a real disposable Server and the complete successful restore regression remain required. ## Does this PR potentially affect the following parts? - [x] Nope - [ ] Dependencies - [ ] Modify configurations - [ ] The public API - [ ] Other affects ## Documentation Status - [ ] `Doc - TODO` - [ ] `Doc - Done` - [x] `Doc - No Need`: restores the existing CLI failure and cleanup contract. Organization core CI passes on the current branch. The final combined distribution builds against a fixed Server SDK; original-versus-fixed packaged CLI and recovery acceptance remains in progress. -- 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]
