[fix](iow) force drop partition in INSERT OVERWRITE#62510
Conversation
|
run buildall |
|
Thank you for your contribution to Apache Doris. Please clearly describe your PR:
|
FE Regression Coverage ReportIncrement line coverage |
|
run buildall |
|
run buildall |
TPC-H: Total hot run time: 29256 ms |
TPC-DS: Total hot run time: 171233 ms |
FE UT Coverage ReportIncrement line coverage |
FE Regression Coverage ReportIncrement line coverage |
|
/review |
There was a problem hiding this comment.
Review result: request changes. The PR goal is to ensure INSERT OVERWRITE no longer leaves replaced partitions in the recycle bin, but the change only affects the non-auto-detect path. Auto-detect insert overwrite (PARTITION(*)) still uses InsertOverwriteManager.taskGroupSuccess(), which calls InsertOverwriteUtil.replacePartition(targetTable, oldNames, newNames) without force, so replaced partitions remain recoverable and continue loading the recycle bin.
Critical checkpoint conclusions:
- Goal/test: The stated goal is not fully accomplished; no replacement test was added for the new non-recoverable behavior, and all existing recover-related tests were deleted.
- Scope/clarity: The code change is small, but too narrow because it misses a parallel commit path.
- Concurrency/lifecycle/config/compatibility: No new concurrency, lifecycle, config, or serialization compatibility risk found in the edited line.
- Parallel paths: Blocking issue found in the auto-detect task-group path.
- Tests: Coverage is insufficient; deleted tests should be replaced with tests that assert recovery fails after INSERT OVERWRITE for both normal and auto-detect paths.
- Observability/performance/transaction/persistence: No additional issue found beyond the incorrect force-drop propagation.
- User focus: No additional user-provided review focus was supplied.
|
run buildall |
|
/review |
There was a problem hiding this comment.
I found one blocking issue. The code path now propagates forceDropPartition through both direct and auto-detect insert-overwrite replacement paths, so the previously raised auto-detect implementation gap appears addressed. However, the PR removes the recycle-bin recovery regression tests without adding replacement coverage for the new behavior.
Critical checkpoint conclusions:
- Goal/test proof: the implementation aims to keep INSERT OVERWRITE replaced partitions out of the recycle bin, but the PR does not include a regression test proving recover now fails or is impossible for direct, whole-table, unpartitioned, and auto-detect paths.
- Scope: the code change is small and focused, but deleting the existing tests leaves the behavior unguarded.
- Concurrency/lifecycle/config: no new concurrency, special lifecycle, or config concerns found beyond existing insert-overwrite manager behavior.
- Compatibility/protocol: the added optional Thrift field is wire-compatible; no additional FE-BE variable path found.
- Parallel paths: the prior direct vs auto-detect path gap is now handled in code, but needs coverage.
- Test coverage/results: blocking gap; deleted tests are not replaced with negative/positive assertions for the new recycle-bin semantics.
- Observability/transactions/persistence/performance: no additional issue found in the changed lines.
User focus: no additional user-provided review focus was supplied.
Cloud UT Coverage ReportIncrement line coverage Increment coverage report
|
BE UT Coverage ReportIncrement line coverage Increment coverage report
|
TPC-H: Total hot run time: 29896 ms |
TPC-DS: Total hot run time: 172117 ms |
BE Regression && UT Coverage ReportIncrement line coverage Increment coverage report
|
What problem does this PR solve?
Problem Summary:
"Insert overwrite" can be achieved by using "replace partition". By default, the replaced partition will be placed in the recycle bin. However, in the "insert overwrite" scenario, the partitions placed in the recycle bin make it difficult to restore the table to its previous state. And if a large number of partitions are placed in the recycle bin, it will significantly increase the load of the recycle bin. Therefore, now the "insert overwrite" operation no longer places the replaced partitions into the recycle bin.
Release note
None
Check List (For Author)
Test
Behavior changed:
Does this need documentation?
Check List (For Reviewer who merge this PR)