JBoss.org Community Documentation

22.7.6. Merging

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 flow control 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"
    down_thread="false" up_thread="false"/>

The configurable attributes in the FC element are as follows.

  • max_interval specifies the maximum number of milliseconds to send out a MERGE message.

  • min_interval specifies the minimum number of milliseconds to send out a MERGE message.

JGroups chooses a random value between min_interval and max_interval to send out the MERGE message.

Note

The cluster states are not merged in a merger. This has to be done by the application. 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 would not merge all the nodes even though shunning is disabled. Alternatively use MPING, which is commonly used with TCP to provide multicast member discovery capabilities, instead of TCPPING to avoid having to specify all the nodes.