wuchong commented on code in PR #2467:
URL: https://github.com/apache/fluss/pull/2467#discussion_r2724987653
##########
fluss-flink/fluss-flink-common/src/test/java/org/apache/fluss/flink/source/ChangelogVirtualTableITCase.java:
##########
@@ -355,12 +370,19 @@ public void testChangelogWithScanStartupMode() throws
Exception {
"SELECT _change_type, id, name FROM
startup_mode_test$changelog" + optionsLatest;
CloseableIterator<Row> rowIterLatest =
tEnv.executeSql(queryLatest).collect();
- // Write new data after subscribing with 'latest'
- CLOCK.advanceTime(Duration.ofMillis(100));
- writeRows(conn, tablePath, Arrays.asList(row(6, "v6")), false);
+ // Write multiple records with delays to ensure capture after 'latest'
subscription is
+ // ready.
+ for (int i = 6; i <= 8; i++) {
+ Thread.sleep(1000);
+ CLOCK.advanceTime(Duration.ofMillis(100));
+ writeRows(conn, tablePath, Arrays.asList(row(i, "v" + i)), false);
+ }
+
+ // Collect results - we expect at least 1 record (the ones written
after subscription)
List<String> latestResults = collectRowsWithTimeout(rowIterLatest, 1,
true);
assertThat(latestResults).hasSize(1);
- assertThat(latestResults.get(0)).isEqualTo("+I[+I, 6, v6]");
+ // The record should be one of the records we wrote (v6 to v10)
Review Comment:
I removed the latest scan startup test temporarily in
https://github.com/apache/fluss/pull/2470, becuase it is quite unstable. We can
re-introduce it in this PR with the proposed way above.
--
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]