Skip to content

Prepare unused temporary workers for V2 without rebuilding source storage #5787

Description

@devantler

🤖 Generated by the Agentic Engineer

The requested outcome is production volumes on released Longhorn V2 without waiting for upstream fixes. Reusing the two unused temporary workers alongside the fresh V2 worker may supply three independent V2 storage targets while every original V1 data-bearing worker remains intact. This avoids making an original-data rebuild the first migration operation.

Implement a separately confirmed, journaled preparation path only for the two fixed temporary V1-pool selections. Before every destructive boundary, prove the selected hardware, original partition, owned fence, loaded layout and complete empty native data inventory. Refuse registered storage, replicas, foreign contents or uncertain identity. Preserve the existing permanent-worker preparation contract and never replay an uncertain reset.

The existing temporary pool names may remain as a bounded compatibility quirk, but their use as V2 storage must be explicit, source-owned and accepted by both admission and runtime validation. Keep their existing node/account limits and required redundancy. New capacity may be activated as V2 only after real raw-disk, huge-page, SPDK and scale-down protection checks pass. Reusing empty capacity must not enable V1 replica scheduling or alter a production claim.

Acceptance: verified interrupted recovery and adverse controls; protected current-main execution proves each selected worker's new encrypted layout and usable V2 storage; a three-target V2 canary then proves persistence, reattachment and V1-to-V2 backup/restore before workload cutover. Actual empty-state proof from #5782 is required before any apply. If that proof fails, retain the existing migration route and preserve the worker.

Part of #5582.

Activity

  1. coderabbitai commented on Nov 2, 2026

    @coderabbitai
    Contributor
    🔗 Related PRs

    #5584 - chore(storage): prepare worker capacity for Longhorn V2 [merged]
    #5713 - feat(storage): inventory native V1 replica directories [closed]


    📝 Issue Planner

    Check the box below or use the @coderabbitai plan command to generate an implementation plan and prompts that you can use with your favorite coding assistant.

    • Create Plan

    🧪 Issue enrichment is currently in open beta.

    You can configure auto-planning by selecting labels in the issue_enrichment configuration.

    To disable automatic issue enrichment, add the following to your .coderabbit.yaml:

    issue_enrichment:
      auto_enrich:
        enabled: false

    💬 Have feedback or questions? Drop into our discord!

  2. added theissue type on Nov 2, 2026
  3. self-assigned this
    on Nov 2, 2026
  4. moved this to 📥 Backlog in 🌊 Project Boardon Nov 2, 2026
  5. added 6 commits that reference this issue on Nov 2, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

No labels
No labels

Fields

Priority

None yet

Start date

None yet

Target date

None yet

Effort

None yet

Projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions