igniterealtime / openfire-hazelcast-plugin

Adds support for running multiple redundant Openfire servers together in a cluster
10 stars 13 forks source link

When recovering split-brain, let 'leave' play out before 'join' again #69

Closed guusdk closed 2 years ago

guusdk commented 2 years ago

The existing resolution for a split-brain scenario is one that simulates a 'leave-the-cluster' event, followed by a 'join-the-cluster' event.

A problem in the implementation is that 'joining' happens to soon after the 'leave' is issued. Various (asynchronous) processes are still cleaning up data, while the join-routines are being executed. It has been observed that certain data that's added by virtue of the 'join' is being removed again as the 'leave' is still being executed.