[erlang-questions] User-level heartbeat (was mnesia bug)
Serge Aleynikov
saleyn@REDACTED
Thu Mar 13 12:54:54 CET 2008
One additional requirement I stumbled across was that some nodes could
be behind a firewall and UDP may not have been allowed in either
direction. In this case the "administrative channel" should be
configurable to attempt TCP pings (connect/send/receive/disconnect) with
short connect timeout for those nodes that are behind the firewall.
Additionally, TCP connections can be restricted only to one direction
(inside firewall to outside), so the channel pinging needs to be
uni-directional.
I'll see if I find time to document the app. Then I could make it
available to public.
Ulf Wiger wrote:
> If it's following my advice, it's basically an administrative channel
> apart from Distributed Erlang. We use an UDP port, and our
> cluster controllers periodically send a status message to each
> of the others. If you receive such a message from a node that's
> not in your nodes() list (and you have connect_once semantics),
> then you have a problem.
>
> With this semantics, the channel doesn't really need to be fully
> reliable; if a message is dropped, the indication will be delayed
> until the next interval.
>
> BR,
> Ulf W
>
> 2008/3/13, Jay Nelson <jay@REDACTED>:
>> Serge wrote:
>>
>> > The only solution is to follow a variation of Uffe's advise (*) on
>> > recovering mnesia from a partitioned network - run the NodeC node
>> with
>> > {dist_auto_connect, once} and upon detecting a nodedown event on
>> NodeC
>> > enabling user-level heartbeat, and upon receiving a response from
>> NodeA
>> > or NodeB restart NodeC.
>>
>> What exactly are you referring to when you say "user-level
>> heartbeat"? Is this an application you rolled yourself for pinging
>> with UDP packets, or is there some option for turning on and off the
>> heartbeat process that comes with OTP?
>>
>> jay
>>
>> _______________________________________________
>> erlang-questions mailing list
>> erlang-questions@REDACTED
>> http://www.erlang.org/mailman/listinfo/erlang-questions
>>
> _______________________________________________
> erlang-questions mailing list
> erlang-questions@REDACTED
> http://www.erlang.org/mailman/listinfo/erlang-questions
>
More information about the erlang-questions
mailing list