Uh oh!
There was an error while loading. Please reload this page.
branch-4.1: [opt](compaction) support tablet-level compaction through SQL #66611 - #67203
Merged
Conversation
Problem Summary: **Background** `ADMIN COMPACT TABLE` currently supports compaction only at the partition level, which is too coarse-grained for tablet-level troubleshooting and maintenance. **Solution** This PR adds SQL support for triggering compaction on a single tablet: ```sql ADMIN COMPACT TABLET <tablet_id> WHERE TYPE = '<compaction_type>'; ``` Supported compaction types: - `BASE` - `CUMULATIVE` - `FULL` The FE parses and validates the statement, checks access to the specified tablet, and submits the request through the existing compaction task flow in both local and cloud modes. **Main changes** - Add parser support for `ADMIN COMPACT TABLET`. - Add a dedicated `AdminCompactTabletCommand`. - Add execution support in `Env` and `CloudEnv`. - Record the statement with `StmtType = ADMIN`. - Separate tablet-level compaction from the table-level command. - Add regression tests for local and cloud modes. - Add parser unit tests for the new syntax. **Behavior change** - **Before:** SQL-triggered compaction was supported only at the partition level. - **After:** Users can trigger `BASE`, `CUMULATIVE`, or `FULL` compaction for a single tablet through FE SQL. ### Release note Add SQL support for triggering `BASE`, `CUMULATIVE`, and `FULL` compaction on a single tablet: ```sql ADMIN COMPACT TABLET <tablet_id> WHERE TYPE = '<compaction_type>'; ``` Supported values for `<compaction_type>` are `BASE`, `CUMULATIVE`, and `FULL`. ### Check List (For Author) - Test <!-- At least one of them must be included. --> - [x] Regression test - [x] Unit Test - [ ] Manual test (add detailed scripts or steps below) - [ ] No need to test or manual test. Explain why: - [ ] This is a refactor/code format and no logic has been changed. - [ ] Previous test can cover this change. - [ ] No code files have been changed. - [ ] Other reason <!-- Add your reason? --> **Regression tests:** - Added local-mode coverage for tablet-level compaction. - Added cloud-mode coverage for tablet-level compaction. **Unit tests:** - Added parser coverage for `ADMIN COMPACT TABLET`. - Covered the `BASE`, `CUMULATIVE`, and `FULL` compaction types. - Behavior changed: - [ ] No. - [x] Yes. Users can now trigger compaction for a single tablet through SQL. Previously, SQL-triggered compaction was supported only at the partition level. - Does this need documentation? - [ ] No. - [x] Yes. <!-- Add document PR link here. eg: apache/doris-website#1214 --> - Document PR: TBD
hello-stephen
commented
Aug 27, 2026
Contributor
Thank you for your contribution to Apache Doris. Please clearly describe your PR:
|
hello-stephen
commented
Aug 27, 2026
Contributor
run buildall |
yiguolei
approved these changes
Aug 27, 2026
Uh oh!
There was an error while loading. Please reload this page.
ContributorAuthor
PR approved by anyone and no changes requested. |
ContributorAuthor
PR approved by at least one committer and no changes requested. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for freeto join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Cherry-picked from #66611