-
Notifications
You must be signed in to change notification settings - Fork 2.9k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add start_distribution to kernel environment #2088
Conversation
@sirihansen now that OTP 22-rc.1 is out, do you have any thoughts on this PR? I would love to get this on OTP 22 because it would be essential to allow us to configure releases with Elixir itself. Thank you. |
It would be really good to have some kind of test for this, to make sure we don't break it later on. Unless you have better ideas yourself, you could try either of
|
I assume something like done here? otp/erts/emulator/test/distribution_SUITE.erl Lines 824 to 827 in a94b54d
Thanks @sirihansen! |
59224cb
to
e370f32
Compare
@sirihansen pushed a test with os:cmd. |
2967e4d
to
5c493d9
Compare
Thanks! It'll run in tests over the weekend. |
The test runs nicely, but I just realized that it is in the emulator test and not in kernel (which is the affected application). Would you mind moving it to kernel_config_SUITE instead? (and please remove the comment here: https://github.com/erlang/otp/blob/master/lib/kernel/test/kernel_config_SUITE.erl#L62). |
Sometimes you may want to start Erlang without any of its distribution services. This commit adds an environment configuration that allows so. Because the servers we don't start here are a subset of the servers not started on minimal mode, we do have a guarantee that the system can still operate as the system operates without those apps on minimal mode.
5c493d9
to
c3391bb
Compare
@sirihansen done. |
If we are going this way would like to add a note about EPMD, which presents problems as its always started by erlang as a daemon if its not running. This leads to weird behavior in things like supervised containers, as EPMD is part of the process tree, and when the VM dies, the supervisor still keeps thinking the tree is alive. |
@vans163 you can pass |
@josevalim its not because you also need to shim the EPMD implementation or you get an error when running a node with -start_epmd false, Protocol 'inet_tcp': register/listen error: econnrefused. |
Sometimes you may want to start Erlang without any
of its distribution services. This commit adds an
environment configuration that allows so.
Because the servers we don't start here are a subset
of the servers not started on minimal mode, we do
have a guarantee that the system can still operate
as the system operates without those apps on minimal
mode.