csarushan1729 opened a new pull request, #993: URL: https://github.com/apache/incubator-xtable/pull/993
Fixes #962 ## What is the purpose of the pull request A Hudi snapshot (FULL) sync currently fails when the source commit has already been synchronized to the target. HudiConversionTarget derives the Hudi instant from the source commit time. On a repeated FULL sync with an unchanged source, it tries to create the same replace-commit again, which results in: HoodieIOException: Failed to create immutable file .../<instant>.replacecommit.inflight Caused by: FileAlreadyExistsException This PR makes the commit path idempotent so that repeating a FULL sync of an unchanged source succeeds safely. ## Brief change log - In HudiConversionTarget.CommitState.commit(), check whether a completed replace-commit for the target instant already exists - If it exists, skip creating the timeline files and return successfully - Preserves existing behavior for new instants and for metadata repair cases ## Verify this pull request This change is covered by existing unit tests in TestHudiConversionTarget. The new logic only adds an early return when the instant is already completed, so the normal commit path continues to be exercised by current tests. -- 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]
