Skip to content

Conversation

@Nasf-Fan
Copy link
Contributor

@Nasf-Fan Nasf-Fan commented Dec 30, 2025

Include the followings:

  1. When create CHK IV namespace, make the secondary group to be same as
    the primary group. Otherwise, CHK logic may hit DER_NONEXIST trouble
    when communicate via IV.

  2. Integrate CHK IV namespace create and destroy API, cleanup related
    logic, redefine the version.

  3. Get ranks list and IV namespace version from CHK leader when rejoin.
    Adjust CHK_REJOIN RPC for related changes.

  4. Remove unsupported functionality for checking the specified 'phase'.

  5. Add new test for case of lost some engine(s) before start checker.

Test-tag: recovery

Signed-off-by: Fan Yong [email protected]

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).

@github-actions
Copy link

Ticket title is 'DAOS checker cannot completed on Aurora after some engines excluded'
Status is 'In Progress'
Labels: 'scrubbed_2.6.5'
https://daosio.atlassian.net/browse/DAOS-17535

@daosbuild3
Copy link
Collaborator

@Nasf-Fan Nasf-Fan changed the title DAOS-17535 chk: secondary group should be same as primary group for C… DAOS-17535 chk: misc improvements for CR logic Dec 31, 2025
@Nasf-Fan Nasf-Fan force-pushed the Nasf-Fan/DAOS-17535_7 branch from 8e4ad6a to 639a8ec Compare December 31, 2025 03:16
@daosbuild3
Copy link
Collaborator

Test stage Functional Hardware Medium 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-17329/1/execution/node/1388/log

@daosbuild3
Copy link
Collaborator

@Nasf-Fan Nasf-Fan force-pushed the Nasf-Fan/DAOS-17535_7 branch from 639a8ec to 78579dd Compare December 31, 2025 07:33
@daosbuild3
Copy link
Collaborator

@Nasf-Fan Nasf-Fan force-pushed the Nasf-Fan/DAOS-17535_7 branch 2 times, most recently from aa39da7 to 476d0f9 Compare January 1, 2026 03:09
@daosbuild3
Copy link
Collaborator

@daosbuild3
Copy link
Collaborator

Test stage Functional Hardware Medium 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-17329/5/execution/node/1324/log

Include the followings:

1. When create CHK IV namespace, make the secondary group to be same as
   the primary group. Otherwise, CHK logic may hit DER_NONEXIST trouble
   when communicate via IV.

2. Integrate CHK IV namespace create and destroy API, cleanup related
   logic, redefine the version.

3. Get ranks list and IV namespace version from CHK leader when rejoin.
   Adjust CHK_REJOIN RPC for related changes.

4. Remove unsupported functionality for checking the specified 'phase'.

5. Add new test for case of lost some engine(s) before start checker.

Test-tag: recovery

Signed-off-by: Fan Yong <[email protected]>
@Nasf-Fan Nasf-Fan force-pushed the Nasf-Fan/DAOS-17535_7 branch from 476d0f9 to 09aaf91 Compare January 4, 2026 02:41
@daosbuild3
Copy link
Collaborator

@Nasf-Fan
Copy link
Contributor Author

Nasf-Fan commented Jan 4, 2026

Test stage NLT on EL 8.8 completed with status UNSTABLE. https://jenkins-3.daos.hpc.amslabs.hpecorp.net/job/daos-stack/job/daos//view/change-requests/job/PR-17329/6/testReport/

NLT failure for DAOS-17435, not related with the patch. All required CR tests passed.

@Nasf-Fan Nasf-Fan marked this pull request as ready for review January 4, 2026 09:34
@Nasf-Fan Nasf-Fan requested review from gnailzenh, kjacque and wangshilong and removed request for kjacque January 4, 2026 09:34
@Nasf-Fan
Copy link
Contributor Author

Nasf-Fan commented Jan 9, 2026

Ping reviewers, thanks!

Copy link
Contributor

@kjacque kjacque left a comment

Choose a reason for hiding this comment

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

Overall looks good, just a couple minor comments/questions.

Comment on lines +2652 to +2653
if (unlikely(ins->ci_ranks == NULL))
D_GOTO(out, rc = -DER_NOTAPPLICABLE);
Copy link
Contributor

Choose a reason for hiding this comment

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

This seems like a strange case where it would be good to log something. What could cause the ranks not to be fetched, if an error wasn't returned?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

This may happen when chk_prop_fetch() got empty rank_list if checker has never run before or related CR property was removed for some reason. Anyway, it is not fatal for current operation since we expect to remove the specified rank from the rank_list.

Comment on lines 577 to +578
uint32_t ci_start_flags;
uint32_t ci_ns_ver;
Copy link
Contributor

Choose a reason for hiding this comment

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

minor - indent is strange here. If the formatter did it, feel free to disregard.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Yes, it is the clang-format required, honestly, I also do not like such style;)

Comment on lines +217 to +219
/* Let secondary rank == primary rank. */
rc = crt_group_secondary_modify(ins->ci_iv_group, ins->ci_ranks, ins->ci_ranks,
CRT_GROUP_MOD_OP_REPLACE, ns_ver);
Copy link
Contributor

Choose a reason for hiding this comment

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

Since this function call is repeated in a few places with the same comment, you could put it in a simple (maybe even inline) wrapper function that takes only ins and ns_ver as params. Also, I think it would be good to add detail to the comment as to why the primary and secondary groups must be the same for the checker.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Good idea. I will do that when need to refresh the patch next time, or in subsequent CR related PR.

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.

4 participants