shuke987 opened a new pull request, #64945:
URL: https://github.com/apache/doris/pull/64945
# [fix](regression) handle cumulative delete-version compaction wait
## Summary
Fix `trigger_and_wait_compaction` so Cloud cumulative compaction that meets
a delete version does not wait until the 300s timeout after valid progress has
already happened.
When cumulative compaction meets a delete version, BE can return `[E-2010]
cumulative compaction meet delete version`, advance the cumulative point, and
let base compaction handle the rowsets. In that path the cumulative
success/failure timestamps may not change, so the old helper kept polling even
after `run_status=false`.
This patch treats `E-2010` plus cumulative point advancement as a completed
cumulative delete-version path while still waiting when `run_status=true`.
## Root Cause
The case `compaction/test_compacation_with_delete.groovy` creates
alternating data and delete rowsets, then calls
`trigger_and_wait_compaction(tableName, "cumulative")`.
In Cloud mode this can legally follow:
1. cumulative compaction meets delete version and returns `E-2010`
2. cumulative point advances
3. base compaction handles the delete-version rowsets
The helper only watched cumulative success/failure timestamp changes. In the
failing log, base compaction completed in 448 ms, but the helper waited for 5
minutes because the cumulative timestamps did not change.
## Validation
- `git diff --check`
- `git diff --check origin/master..HEAD`
- Local Groovy condition simulation:
- `E-2010 + cumulative point advanced + run_status=false` exits wait
- unchanged timestamps and no point movement keeps waiting
- `run_status=true` keeps waiting even if point advanced
Cloud P0 rerun is still needed for final validation.
--
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]