Thu Jun 11 03:04:54 CEST 2015
Even later reply. To chime in on Danills comment. It is a linux specific
problem that the kernel OOM killer will go ahead and kill the whole process
tree meaning Erlang and Heart at the same time because heart is a child
process of erl.
For this reason I would strongly advise against using heart on linux based
systems at this time. One option is using supervisord which is very easy to
configure and use with erlang - and does not have the above problem.
Here is a complete sample configuration with '...' as placeholders for your
command=/usr/bin/erl -noinput -noshell +K true -boot ... -config ...
On Sun, May 24, 2015 at 4:33 AM, Matthias Lang <matthias@REDACTED>
> On 13. May 2015, Michael L Martin wrote:
> > But who watches the watchdog?
> Late reply. One approach is to have a hardware watchdog.
> On the embedded system I work on, Erlang kicks a custom 'heart'
> program. The heart program kicks the hardware watchdog.
> Hangs in Erlang code are dealt with by timeouts and supervisors.
> Hangs in the VM are dealt with by 'heart'.
> Hangs in 'heart' are dealt with by the hardware watchdog.
> This approach is sufficient to make hangs an insignificant contributor
> to downtime in a five-nines environment (signalling in the SS7
> network), in my experience.
> erlang-questions mailing list
Director of R&D
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the erlang-questions