Skip to content

feat(plan): add versioned staged activation - #474

Merged
zzylol merged 4 commits into
mainfrom
feat/plan-version-staged-activation
Sep 4, 2026
Merged

zzylol merged 4 commits into
mainfrom
feat/plan-version-staged-activation

Conversation

@zzylol

@zzylol zzylol commented Sep 3, 2026

Copy link
Copy Markdown
Contributor

Summary:

  • Add plan_version, activation/expiry metadata, backend compatibility identity, and staged -> active -> draining -> retired lifecycle.
  • Stage the complete PhysicalPlan snapshot and activate it with one ArcSwap publication.
  • Enforce globally monotonic versions across plan IDs, recheck version at activation time, and prevent the staged-v3/then-v2 downgrade race.
  • Keep staged plans and observable lifecycle statuses under one mutex so lifecycle transitions are consistent.
  • Rebased on the node-ID physical DAG in feat(query): execute authoritative QueryPlan #472.

Verification:

  • cargo check -p control_plane -p data_plane
  • activation lifecycle targeted tests pass, including cross-plan downgrade regression
  • BackendPlan wire/validation tests: 9 passed
  • git diff --check

Stack 2/N. Please do not merge independently of #472.

@zzylol
zzylol force-pushed the feat/plan-version-staged-activation branch 3 times, most recently from c9267bd to eb4c70a Compare September 3, 2026 19:53
@zzylol
zzylol force-pushed the feat/query-plan-runtime branch from 501bc0a to 84b9c16 Compare September 3, 2026 20:35
@zzylol
zzylol force-pushed the feat/plan-version-staged-activation branch from eb4c70a to 55727a9 Compare September 3, 2026 20:36
@zzylol
zzylol force-pushed the feat/query-plan-runtime branch from 84b9c16 to 3714ee9 Compare September 4, 2026 02:54
@zzylol
zzylol force-pushed the feat/plan-version-staged-activation branch from 824e819 to 489f5cd Compare September 4, 2026 02:54
@zzylol
zzylol force-pushed the feat/plan-version-staged-activation branch from 489f5cd to 7b89b1c Compare September 4, 2026 03:25
@zzylol
zzylol changed the base branch from feat/query-plan-runtime to main September 4, 2026 03:41
@zzylol
zzylol merged commit 800b83f into main Sep 4, 2026
1 check passed
@zzylol
zzylol deleted the feat/plan-version-staged-activation branch September 12, 2026 14:48
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant