You are correct. monitor_nodes is not going to tell you if a node left, crashed, or if you just can’t talk to it temporarily. That’s an intrinsic problem of distributed systems and you need timeouts or group membership protocols, for example: do other nodes also see that node A is down? If only you think it is down, then it can still be up, etc.
But depending on the problem, you can just assume the node is gone and, when it is back up, you ask its latest copy of the data again. If you keep a buffer, you just need the diff (for example, you had revision 34 and the node has revision 42, you ask the changes from 35 to 42).






















