Skip to content

prted: name the session server's file by a rendezvous ID - #2878

Merged
rhc54 merged 1 commit into
openpmix:masterfrom
rhc54:topic/session-rndz-id
Nov 2, 2026
Merged

rhc54 merged 1 commit into
openpmix:masterfrom
rhc54:topic/session-rndz-id

Conversation

@rhc54

@rhc54 rhc54 commented Nov 2, 2026

Copy link
Copy Markdown
Contributor

#2877 gave a DVM's controller and daemons an ID of their own making and passed it to PMIx_server_init as PMIX_SESSION_ID, because PMIx named a session server's rendezvous file by that attribute. But PMIX_SESSION_ID is the session's ID as the scheduler assigned it, and clients and tools read it as such. The DVM's computed value doesn't belong there.

openpmix/openpmix#4385 adds PMIX_SESSION_RNDZ_ID, which only names the rendezvous file, and falls back to PMIX_SESSION_ID when it isn't given.

Change

  • Pass the computed ID as PMIX_SESSION_RNDZ_ID when the PMIx defines it, and nothing as PMIX_SESSION_ID. A PMIx without the attribute names no session server's file by an ID, so there is nothing to pass.

  • Rename what prted: name the session a DVM is the session server of #2877 added to match:

    • the MCA parameter pmix_session_id is now pmix_session_rndz_id;
    • prte_pmix_server_compute_session_id() is now prte_pmix_server_compute_rndz_id().

    Neither has been in a release.

This PR and openpmix/openpmix#4385 can merge in either order. Against PMIx master as it is now, PRRTE builds and passes nothing. Against #4385 before this PR, the fallback names the file by the PMIX_SESSION_ID that #2877 passes.

Testing

  • Unit tests: pass, including the renamed ID checks.
  • Built against PMIx master (without the attribute): builds clean.
  • Built against ptl: a session-level server is named by a rendezvous ID openpmix#4385:
    • the debugger examples pass;
    • two DVMs of one user on a node and a prterun beside them all start, each DVM's file is named by its own ID, --pid reaches either DVM, and prun with no target lists both;
    • the docker swarm with PMIX_SRC set to that branch: 936 passed, 0 failed, 3 skipped.

openpmix#2877 gave a DVM's controller and daemons an ID of their own making and
passed it to PMIx_server_init as PMIX_SESSION_ID, since PMIx named a
session server's rendezvous file by that. But PMIX_SESSION_ID is the
session's ID as the scheduler assigned it, which clients and tools read
as such; the DVM's computed value does not belong there.

PMIx now takes the ID that names the file as its own attribute,
PMIX_SESSION_RNDZ_ID, falling back to PMIX_SESSION_ID when it is not
given. Pass the computed ID as PMIX_SESSION_RNDZ_ID, when the PMIx
defines it, and nothing as PMIX_SESSION_ID. A PMIx without the attribute
names no session server's file by an ID, so there is nothing to pass.

Rename what openpmix#2877 added to match: the MCA parameter pmix_session_id is
now pmix_session_rndz_id, and prte_pmix_server_compute_session_id is
prte_pmix_server_compute_rndz_id. Neither has been in a release.

Signed-off-by: Ralph Castain <rhc@pmix.org>
@rhc54
rhc54 merged commit c403e3e into openpmix:master Nov 2, 2026
18 checks passed
@rhc54
rhc54 deleted the topic/session-rndz-id branch November 2, 2026 14:00
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