<div dir="ltr">Hello,<div><br></div><div><div class="gmail_extra"><div class="gmail_quote">On Mon, Nov 14, 2016 at 5:04 AM, Benoit Chesneau <span dir="ltr"><<a href="mailto:bchesneau@gmail.com" target="_blank">bchesneau@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div><br></div><div>Got a little further this morning, I see in the erlang bif, that it does a `gen_server:call` to `{net_kernel, Node}` and then in net_kernel, spawn a process, and link to the original pid. But I'm trying to understand how the 'EXIT' is relayed, what is the logic behind? </div></div></blockquote><div><br></div><div>Most of the distribution mechanisms are handled seamlessly by the Erlang VM. It uses the protocol described here: <a href="http://erlang.org/doc/apps/erts/erl_dist_protocol.html">http://erlang.org/doc/apps/erts/erl_dist_protocol.html</a> to communicate in between nodes. The remote erlang:link/1 call and the resulting EXIT signal is sent and received through that protocol.</div><div><br></div><div><div>Lukas</div><div></div></div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div><br></div><div>My original intention was to add it to teleport once the handshake is improved:</div><div><a href="https://gitlab.com/barrel-db/teleport" target="_blank">https://gitlab.com/barrel-db/<wbr>teleport</a> <br></div><div><br></div><div>so I can have an option to spawn a process on a remote node via tcp connection and link it. Any idea is welcome.</div><span class="gmail-HOEnZb"><font color="#888888"><div><br></div><div>Benoit</div><div><br></div></font></span></div><div class="gmail-HOEnZb"><div class="gmail-h5"><br><div class="gmail_quote"><div dir="ltr">On Sun, Nov 13, 2016 at 10:43 AM Benoit Chesneau <<a href="mailto:bchesneau@gmail.com" target="_blank">bchesneau@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex"><div dir="ltr" class="gmail-m_-5085510694111539603gmail_msg">Is there any documentation that describes how spawning a a process on a remote node is implemented? Which part of the code is responsible of it?<div class="gmail-m_-5085510694111539603gmail_msg"><br class="gmail-m_-5085510694111539603gmail_msg"></div><div class="gmail-m_-5085510694111539603gmail_msg"><br class="gmail-m_-5085510694111539603gmail_msg"></div><div class="gmail-m_-5085510694111539603gmail_msg">I am wondering how the link between 2 processes on 2 different nodes is implemented, if there is some PING mechanism or such, ...</div><div class="gmail-m_-5085510694111539603gmail_msg"><br class="gmail-m_-5085510694111539603gmail_msg"></div><div class="gmail-m_-5085510694111539603gmail_msg">Benoît</div></div>
</blockquote></div>
</div></div><br>______________________________<wbr>_________________<br>
erlang-questions mailing list<br>
<a href="mailto:erlang-questions@erlang.org">erlang-questions@erlang.org</a><br>
<a href="http://erlang.org/mailman/listinfo/erlang-questions" rel="noreferrer" target="_blank">http://erlang.org/mailman/<wbr>listinfo/erlang-questions</a><br>
<br></blockquote></div><br></div></div></div>