diff options
author | Anders Svensson <[email protected]> | 2016-11-06 22:20:35 +0100 |
---|---|---|
committer | Anders Svensson <[email protected]> | 2017-06-21 16:40:32 +0200 |
commit | 34a186689a318ebc6fe2afaff396364d832bb21b (patch) | |
tree | 7a56031c857a42586d610c45e073e46e3d02e366 /HOWTO/BOOTSTRAP.md | |
parent | 040bdce67f88d833bfb59adae130a4ffb4c180f0 (diff) | |
download | otp-34a186689a318ebc6fe2afaff396364d832bb21b.tar.gz otp-34a186689a318ebc6fe2afaff396364d832bb21b.tar.bz2 otp-34a186689a318ebc6fe2afaff396364d832bb21b.zip |
Don't assume nodes are eternally connected when sharing transport
Service configuration share_peers and use_shared_peers is used to share
peer connections with other connected nodes having a service of the same
name: a service process asks its neighbours about existing connections
when it starts, and pushes new connections as they're established.
The problem is that the mechanics assume that nodes() doesn't change. In
particular, if a neighbour isn't connected when a service starts then it
doesn't receive the request to share connections. Solve by having each
service process monitor nodes, a nodeup notification causing it to
request connections of its neighbours. Nodes going down is already
handled, by remote connections being monitored in diameter_service.
Diffstat (limited to 'HOWTO/BOOTSTRAP.md')
0 files changed, 0 insertions, 0 deletions