Distributed applications
Gunilla Hugosson
gunilla@REDACTED
Thu Mar 9 13:22:25 CET 2000
Hi Sean,
You need to make sure that the nodes are synchronized using
the kernel parameters sync_nodes_mandatory, sync_nodes_optional
and sync_nodes_timeout.
And, more important, distributed applications doesn't work
if you start the applications manually from the shell using
application:start(App), you have to generate a boot script
which starts the application automatically. (I'm investigating
why this is the case, as part of the ongoing work we are doing
on release handling).
/ Gunilla
Sean Hinde wrote:
>
> Hi all,
>
> I have a very simple application containing a single locally registered
> gen_server which I want to make distributed in the splendidly described
> manner of Sam Tardieu for his power outages example.
>
> I've set up the 'distributed' kernel parameter with my app name and node
> names as per the example and set the start_phases to [] in my .app file:
>
> {distributed, [{backup, [{test1@REDACTED, {test2@REDACTED, test3@REDACTED}]}]}
>
> All files are generated using the standard skeletons in the emacs-mode with
> 4.9.1.
>
> If I start with nodes 2 and 3, application:start(backup) hangs on both.
> The app then starts fine on test1, but application:start(backup) remains
> hung on nodes 2 and 3.
>
> Restarting various nodes means I can get the application fully running on
> all nodes at once, which I am not at all sure is the idea of this - is it?
>
> Do I need to do stuff with start phases or having different behaviour in the
> application file for normal and takeover etc for this simple locally
> registered example? Something else?
>
> Any and all help much appreciated.
>
> Regards,
> Sean
More information about the erlang-questions
mailing list