fix(view): activate durable metadata refresh - #27431
Closed
ck89119 wants to merge 31 commits into
Closed
Conversation
# Conflicts: # pkg/bootstrap/versions/v4_0_6/tenant_upgrade_list.go # pkg/bootstrap/versions/v4_0_6/upgrade_test.go # pkg/sql/plan/build_ddl.go # pkg/sql/plan/query_builder.go # pkg/sql/plan/view_dependency_test.go # pkg/sql/plan/view_regeneration.go
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.
What type of PR is this?
Which issue(s) this PR fixes:
issue #26227
What this PR does / why we need it:
This is the final activation layer for the View metadata lifecycle built by #27267 and #27370 on top of the durable admission contract from #27430.
It:
READYstate;DESC,SHOW COLUMNS,information_schema.columns, and current-catalog CTAS while ordinary View queries continue to rebind the stored SQL;The activation authority is the replicated HAKeeper admission epoch. No local
MOClustersnapshot can independently authorize refresh.Validation:
-race -count=100;SHOWand access-control BVT;go vet,git diff --check(excluding established.resulttrailing-space formatting), and a finalmo-servicebuild.Design artifact
2026-08-27 / v1, statusApproved.Review closure evidence
information_schema.columnsinstead of matching raw SQL text, so comments/formatting cannot bypass the fence; CTE aliases and string literals do not create false positives.483138ea57e7e5e5189d5a7d12cf6883f3ff31a8; exact old/base binary:424fe3d821e45fe883ab93af5b404d77686d05a0.VARCHAR(12)), one-new/one-old fail-closed (0visible rows), all-new activation (VARCHAR(48)), same-UUID CN restart, old-binary rollback denied before ingress, new-binary recovery, and immediate whole-cluster restart with durable revalidation.VARCHAR(12)toVARCHAR(48);RESTORE TABLE ... {SNAPSHOT=...}revalidated back toVARCHAR(12).matrixorigin/CI/.github/workflows/e2e-upgrade.yaml@maincurrently hard-disables Target/Release jobs withif: false; those SKIPPED jobs were not counted as validation evidence.