This is an automated email from the ASF dual-hosted git repository.
vhs pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/hudi.git
The following commit(s) were added to refs/heads/master by this push:
new 5a57f9fa3c8e test: Fix flaky test
`testLatestCheckpointCarryOverWithMultipleWriters` (#17722)
5a57f9fa3c8e is described below
commit 5a57f9fa3c8e86586f46b9849d822cc840331c02
Author: Y Ethan Guo <[email protected]>
AuthorDate: Fri Dec 26 02:12:12 2025 -0800
test: Fix flaky test `testLatestCheckpointCarryOverWithMultipleWriters`
(#17722)
---
.../deltastreamer/TestHoodieDeltaStreamerWithMultiWriter.java | 8 +++++++-
1 file changed, 7 insertions(+), 1 deletion(-)
diff --git
a/hudi-utilities/src/test/java/org/apache/hudi/utilities/deltastreamer/TestHoodieDeltaStreamerWithMultiWriter.java
b/hudi-utilities/src/test/java/org/apache/hudi/utilities/deltastreamer/TestHoodieDeltaStreamerWithMultiWriter.java
index a7dc64e1ac01..8468c4a2d7dc 100644
---
a/hudi-utilities/src/test/java/org/apache/hudi/utilities/deltastreamer/TestHoodieDeltaStreamerWithMultiWriter.java
+++
b/hudi-utilities/src/test/java/org/apache/hudi/utilities/deltastreamer/TestHoodieDeltaStreamerWithMultiWriter.java
@@ -298,6 +298,12 @@ public class TestHoodieDeltaStreamerWithMultiWriter
extends HoodieDeltaStreamerT
meta.reloadActiveTimeline();
int totalCommits =
meta.getCommitsTimeline().filterCompletedInstants().countInstants();
+ // Capture the checkpoint after backfillJob.sync() to calculate expected
final checkpoint
+ HoodieCommitMetadata commitMetadataAfterBackfill = getLatestMetadata(meta);
+ String checkpointAfterBackfill =
CheckpointUtils.getCheckpoint(commitMetadataAfterBackfill).getCheckpointKey();
+ int expectedNextCheckpointNum = Integer.parseInt(checkpointAfterBackfill)
+ 1;
+ String expectedFinalCheckpoint = String.format("%05d",
expectedNextCheckpointNum);
+
// add a new commit to timeline which may not have the checkpoint in extra
metadata
addCommitToTimeline(meta);
meta.reloadActiveTimeline();
@@ -307,7 +313,7 @@ public class TestHoodieDeltaStreamerWithMultiWriter extends
HoodieDeltaStreamerT
new HoodieDeltaStreamer(cfgBackfillJob, jsc).sync(); // if deltastreamer
checkpoint fetch does not walk back to older commits, this sync will fail
meta.reloadActiveTimeline();
Assertions.assertEquals(totalCommits + 2,
meta.getCommitsTimeline().filterCompletedInstants().countInstants());
- verifyCommitMetadataCheckpoint(meta, "00008");
+ verifyCommitMetadataCheckpoint(meta, expectedFinalCheckpoint);
}
private void verifyCommitMetadataCheckpoint(HoodieTableMetaClient
metaClient, String expectedCheckpoint) throws IOException {