derekkraan / delta_crdt_ex

Use DeltaCrdt to build distributed applications in Elixir
MIT License
493 stars 36 forks source link

Fix for infinitely adding monitors for DOWNed neighbours #37

Closed frekw closed 5 years ago

frekw commented 5 years ago

This fixes an issue where https://github.com/derekkraan/delta_crdt_ex/blob/master/lib/delta_crdt/causal_crdt.ex#L233 would constantly re-add a monitor for a node that is down each time the CRDT attempts to sync. This led to some strange behaviors where the CRDT ended up pretty much only handling DOWN messages and setting up new monitors.