[fix](regression) Wait for auto partition recycle#65375
Conversation
|
Thank you for your contribution to Apache Doris. Please clearly describe your PR:
|
|
run buildall |
|
/review |
|
Codex automated review failed and did not complete. Error: You've hit your usage limit. Visit https://chatgpt.com/codex/settings/usage to purchase more credits or try again at Jul 10th, 2026 6:44 AM. Please inspect the workflow logs and rerun the review after the underlying issue is resolved. |
|
/review |
There was a problem hiding this comment.
Automated review completed for PR #65375.
Critical checkpoints:
- Scope verified from GitHub metadata and patch: one modified file,
regression-test/suites/partition_p0/auto_partition/test_auto_new_recycle.groovy, at head0e74c0a68d3255acb2af8336246db9207881a8d8. - Existing inline review context was empty, so no duplicate inline issue was suppressed.
- The repo-local
.claude/skills/code-review/SKILL.mdwas not present in this checkout after hidden-path checks; I followed the review prompt and shared-ledger workflow. - Patch-scoped
git diff --checkagainst the fetched base passed. I did not run the regression suite because this runner does not provide the required Doris regression environment.
Result: requesting changes for one test stability regression introduced by the longer Awaitility polling window.
User focus: no additional user-provided review focus was supplied.
Subagent conclusions: optimizer-rewrite found no optimizer/rewrite issue. tests-session-config proposed TSC-001; I verified and accepted it as MAIN-001. Convergence round C1 ended with both live subagents replying NO_NEW_VALUABLE_FINDINGS for the same final ledger/comment set.
|
|
||
| waitUntilSafeExecutionTime("NOT_CROSS_DAY_BOUNDARY", 20) | ||
|
|
||
| def waitPartitionCount = { int expectedCount -> |
There was a problem hiding this comment.
The longer poll makes this final now()-based case much easier to race with midnight. The only guard is still waitUntilSafeExecutionTime("NOT_CROSS_DAY_BOUNDARY", 20), but this helper can now wait up to 1200 seconds, and this final call replaces a fixed 8-second sleep after inserting date_add(now(), interval number-5 day). The recycle code decides whether a partition is historical using the scheduler's current time, so if the rows are inserted shortly before midnight and this await observes the recycle after midnight, the partition for the insert day becomes historical and retention can leave 5 partitions instead of the asserted 6. Please either make this case use a fixed base date/time or move/resize the day-boundary guard so it covers the maximum wait through this final assertion.
Summary
test_auto_new_recycleto wait for auto partition recycle by polling the expected partition count.Testing
git diff --checkgit diff --cached --checkFailure evidence: