github-actions[bot] commented on code in PR #65646:
URL: https://github.com/apache/doris/pull/65646#discussion_r3586218687
##########
regression-test/suites/partition_p0/auto_partition/test_auto_new_recycle.groovy:
##########
@@ -176,6 +174,7 @@ suite("test_auto_new_recycle", "nonConcurrent") {
"""
sql """ admin set frontend config
('dynamic_partition_check_interval_seconds' = '600') """
sleep(8000)
+ waitUntilSafeExecutionTime("NOT_CROSS_DAY_BOUNDARY", 1300)
Review Comment:
The guard is in the right part of the test now, but it still has a
sub-second midnight race. `waitUntilSafeExecutionTime` uses
`ChronoUnit.SECONDS.between(...)` and only sleeps when the whole-second value
is positive, so a call at something like `23:59:59.900` returns immediately.
The following `now()` insert can then create day partitions using the
pre-midnight day, while the recycle task may run just after midnight. Since the
scheduler compares DATETIME partition upper bounds against a current-time key
that includes seconds, the insert-day partition can become historical and
retention can leave five partitions instead of the expected six. Please make
the guard sleep/recheck when the boundary is less than one second away, or add
an explicit post-boundary safety margin here before the final `now()` insert.
--
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]