Re: taxonomy of dependencies

From: Jonathan de Boyne Pollard <J.deBoynePollard-newsgroups_at_NTLWorld.com>
Date: Mon, 08 Jun 2015 19:52:23 +0100

post-sysv:
> I still remain convinced that crash-only software was a key insight of
> Erlang, engineering systems so that restarts to a known good state is
> feasible in of itself because components are discrete and trying to
> intervene on internal program state becomes an exponential nightmare.

As someone who designs abort-and-restart-clean into systems, I would
agree ... were it not for my own direct experiences with RabbitMQ
server. (-:

Perhaps it's not Erlang's greatest advertisement. Of course, being fair
I note that the hidden internal Erlang "processes" probably were
crashing quite happily. But the UNIX process in one particular
experience couldn't be persuaded to. The thing would not shut down.

post-sysv:
> NetworkState is defined as any non-loopback device having an IP(v4/v6)
> address assigned to it, [...]

I suspect that the reality is more complex than the doco, here.
Link-local addresses complicate such criteria. And that's just for
starters.

post-sysv:
> This might have been useful in your scenario, [...]

Not really. The thorny question of "What do you clearly and precisely
mean by '$networking is up'?" wasn't the problem, fortunately. The
problem was the surprising behaviour of the GNU libc DNS client library
over a loopback interface, when the system generates those ICMP
unreachable responses *immediately*.
Received on Mon Jun 08 2015 - 18:52:23 UTC

This archive was generated by hypermail 2.3.0 : Sun May 09 2021 - 19:44:19 UTC