Skip to content

Conversation

@potatosalad
Copy link
Contributor

This PR is to support running multiple instances of shell on a remote node that is not connected over the distribution protocol.

In other words, we cannot do the following because there is no OtherNode:

erpc:call(OtherNode, group, whereis_shell, []).

Before calling user_drv:whereis_group() which only allows for a single session, this checks first to see if the current group_leader() has a dictionary entry for shell and uses that instead if found.

This allows things like shell:get_state() to work properly in a setup as described above.

What do y'all think?

@github-actions
Copy link
Contributor

github-actions bot commented Oct 21, 2025

CT Test Results

    2 files     72 suites   1h 8m 21s ⏱️
1 685 tests 1 341 ✅ 344 💤 0 ❌
1 937 runs  1 535 ✅ 402 💤 0 ❌

Results for commit 9fba161.

♻️ This comment has been updated with latest results.

To speed up review, make sure that you have read Contributing to Erlang/OTP and that all checks pass.

See the TESTING and DEVELOPMENT HowTo guides for details about how to run test locally.

Artifacts

// Erlang/OTP Github Action Bot

@frazze-jobb frazze-jobb self-assigned this Oct 22, 2025
@potatosalad potatosalad force-pushed the potatosalad/group_leader-shell-dictionary branch from affbcc9 to 9fba161 Compare October 22, 2025 16:07
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.

3 participants