Skip active-tasks validation in table config validate/tune preflight#19079
Open
shounakmk219 wants to merge 1 commit into
Open
Skip active-tasks validation in table config validate/tune preflight#19079shounakmk219 wants to merge 1 commit into
shounakmk219 wants to merge 1 commit into
Conversation
The validate/tune preflight endpoints (validateClusterAwareConfig) previously ran active-tasks validation, which blocked the basic validate/tune APIs for a table that already exists and has tasks running. Active-tasks validation is a runtime-conflict guard that only matters when a table is being created, updated, or deleted, so it is now excluded from the read-only preflight path. - Remove the ACTIVE_TASKS branch from validateClusterAwareConfig. - Drop ACTIVE_TASKS from the validate/tune @ApiParam docs. - Retain ACTIVE_TASKS as an accepted-but-no-op validationTypesToSkip value for backward compatibility (documented on the enum). - Active-tasks validation is still enforced on create/update (tableTasksValidation, gated by ignoreActiveTasks) and delete (tableTasksCleanup). - Update the now-vacuous ACTIVE_TASKS assertions in the preflight test.
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## master #19079 +/- ##
============================================
- Coverage 65.45% 65.43% -0.03%
Complexity 1421 1421
============================================
Files 3425 3425
Lines 216303 216301 -2
Branches 34266 34265 -1
============================================
- Hits 141590 141545 -45
- Misses 63317 63361 +44
+ Partials 11396 11395 -1
Flags with carried forward coverage won't be shown. Click here to find out more. ☔ View full report in Codecov by Harness. 🚀 New features to boost your workflow:
|
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 free
to 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.
Summary
The table config
validate/tunepreflight endpoints (validateClusterAwareConfiginTableConfigsRestletResource) previously ran active-tasks validation (PinotTableRestletResource.tableTasksValidation). This blocked the basic validate/tune APIs for a table that already exists and has tasks running — even though those endpoints are read-only pre-flight checks.Active-tasks validation is a runtime-conflict guard that only matters when a table is being created, updated, or deleted. This PR removes it from the read-only preflight path so validate/tune are no longer blocked by in-flight tasks.
Changes
ACTIVE_TASKSbranch fromvalidateClusterAwareConfig(the validate/tune preflight path).ACTIVE_TASKSfrom thevalidate/tune@ApiParamdocumentation.ValidationType.ACTIVE_TASKSas an accepted-but-no-opvalidationTypesToSkipvalue for backward compatibility (documented on the enum), so existing clients passing it do not break.ACTIVE_TASKSassertions inTableConfigsRestletResourceTest.Where active-tasks validation still runs
The check is not lost — it is still enforced on the mutating paths:
tableTasksValidation, gated by theignoreActiveTasksquery param (TableConfigsRestletResource,PinotDdlRestletResource,PinotTableRestletResource).tableTasksCleanup.Backward compatibility
Behavior relaxation on the public
/tableConfigs/validateand/tableConfigs/tuneendpoints: configs for an existing table with running tasks that previously failed preflight now pass. TheACTIVE_TASKSskip type is still accepted (no-op) so no client request breaks.Testing
spotless,checkstyle,license, and-Xlintcompiler checks pass on the touched modules (pinot-controller,pinot-segment-local).