Skip to content

DAOS-18592 control: Only use joined ranks when calculating pool size#17580

Draft
tanabarr wants to merge 1 commit intomasterfrom
tanabarr/control-create-stoppedrank
Draft

DAOS-18592 control: Only use joined ranks when calculating pool size#17580
tanabarr wants to merge 1 commit intomasterfrom
tanabarr/control-create-stoppedrank

Conversation

@tanabarr
Copy link
Contributor

@tanabarr tanabarr commented Feb 19, 2026

In order to avoid failing pool create with storage percentage (-z X%)
when ranks have been stopped, only take into account joined ranks when
calculating maximum available pool sizes.

Features: pool

Steps for the author:

  • Commit message follows the guidelines.
  • Appropriate Features or Test-tag pragmas were used.
  • Appropriate Functional Test Stages were run.
  • At least two positive code reviews including at least one code owner from each category referenced in the PR.
  • Testing is complete. If necessary, forced-landing label added and a reason added in a comment.

After all prior steps are complete:

  • Gatekeeper requested (daos-gatekeeper added as a reviewer).

Features: pool
Signed-off-by: Tom Nabarro <thomas.nabarro@hpe.com>
@tanabarr tanabarr requested review from a team as code owners February 19, 2026 18:40
@github-actions
Copy link

Ticket title is 'Pool create with percentage fails after stopping rank 0'
Status is 'In Progress'
https://daosio.atlassian.net/browse/DAOS-18592

@tanabarr tanabarr self-assigned this Feb 19, 2026
@tanabarr tanabarr marked this pull request as draft February 19, 2026 18:43
@daosbuild3
Copy link
Collaborator

Test stage Functional Hardware Large MD on SSD completed with status FAILURE. https://jenkins-3.daos.hpc.amslabs.hpecorp.net//job/daos-stack/job/daos/view/change-requests/job/PR-17580/1/execution/node/1274/log

Copy link
Contributor

@knard38 knard38 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The uni test TestControl_getMaxPoolSize() should probably be update with these new use cases.

approvedRanks = append(approvedRanks, rank)
}
}
filterRank := newFilterRankFunc(ranklist.RankList(approvedRanks))
Copy link
Contributor

@knard38 knard38 Feb 20, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The newFilterRankFunc() should probably be updated to not support empty RankList as all ranks.
From my understanding, if the new filtering on joined ranks produce an empty list it will be interpreted as all ranks by newFilterRankFunc().

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

3 participants

Comments