28.5. Merging (MERGE2)

When a network error occurs, the cluster might be partitioned into several different partitions. JGroups has a MERGE service that allows the coordinators in partitions to communicate with each other and form a single cluster back again. The merging service is configured in the MERGE2 sub-element under the JGroups Config element. Here is an example configuration.
<MERGE2 max_interval="10000"
    min_interval="2000"/>
The configurable attributes in the MERGE2 element are as follows.
  • max_interval specifies the maximum number of milliseconds to wait before sending a MERGE message.
  • min_interval specifies the minimum number of milliseconds to wait before sending a MERGE message.
JGroups chooses a random value between min_interval and max_interval to periodically send the MERGE message.

Note

The application state maintained by the application using a channel is not merged by JGroups during a merge. This must be done by the application.

Note

If MERGE2 is used in conjunction with TCPPING, the initial_hosts attribute must contain all the nodes that could potentially be merged back, in order for the merge process to work properly. Otherwise, the merge process may not detect all sub-groups, and may miss those comprised solely of unlisted members.