Skip to content

Refuse to start the head node without target node counts - #483

Merged
mattjala merged 1 commit into
masterfrom
fix/head-node-zero-target-count
Oct 2, 2026
Merged

mattjala merged 1 commit into
masterfrom
fix/head-node-zero-target-count

Conversation

@mattjala

@mattjala mattjala commented Oct 2, 2026

Copy link
Copy Markdown
Collaborator

Since 1.0.0 the head node admits nodes into a fixed number of slots, sized from target_sn_count and target_dn_count, and reports READY once every slot is filled. Both default to 0, so with them unset no node is admitted, the cluster stays WAITING and every request gets a 503 response. The shipped Compose files set them, so only custom deployments are affected.

The head node now logs an error and exits at startup if either count is below 1. Treating 0 as "any number of nodes", as 0.9.x did, would let the roster grow as nodes arrive, and since partitions are hash % dn_count, nodes would disagree about where objects live.

Since 1.0.0 the head node admits nodes into a fixed number of slots,
sized from target_sn_count and target_dn_count, and reports READY once
every slot is filled. Both default to 0, so with them unset no node is
admitted, the cluster stays WAITING and every request gets a 503 response.
The shipped Compose files set them, so only custom deployments are affected.

The head node now logs an error and exits at startup if either count is
below 1. Treating 0 as "any number of nodes", as 0.9.x did, would let the
roster grow as nodes arrive, and since partitions are hash % dn_count,
nodes would disagree about where objects live.
@mattjala mattjala added this to the HSDS 1.1.0 milestone Oct 2, 2026
@mattjala mattjala added the bug label Oct 2, 2026
@mattjala
mattjala merged commit 91d05bc into master Oct 2, 2026
49 checks passed
@github-project-automation github-project-automation Bot moved this from To be triaged to Done in HSDS - TRIAGE & TRACK Oct 2, 2026
@mattjala
mattjala deleted the fix/head-node-zero-target-count branch October 2, 2026 20:45
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

Development

Successfully merging this pull request may close these issues.

1 participant