Cluster Configuration Changes

As of 8.0.7, 9.3 and higher Yellowfin uses Jgroups 2.x. This introduced changes in the cluster configuration.

The way to customize JGroups config is by altering parameters in one of these files:

com/hof/cluster/RepositoryPing.xml

com/hof/cluster/ClusterDefault.xml

Several config parameters used in the default config of JGroups version 3.x are not valid in JGroups 4.x.

Extract the new RepositoryPing.xml and ClusterDefault.xml files from:

WEB-INF/lib/i4-core.jar/com/hof/cluster/

Use these as the baseline and port over your custom config.  

Things that should not be used:

  • In the TCP config
    • max_bundle_timeout
    • use_send_queues
    • timer*
    • oob_thread_pool*
    • thread_pool.queue_enabled
    • thread_pool.queue_max_size
    • threadpool.rejection_policy
  • In the pbcast.GMS config, do not use the property view_bundling
  • in MERGE3, do not use max_msg_batch_size.
  • in UNICAST3, do not use max_msg_batch_size and conn_expiry_timeout.

Thread pools: a major change in JGroups 4.x is the merging of various threadpools into one. Adjust the min/max threads and the queue size if you had configured multiple thread pools. 

Other changes:

  • FD_ALL is being used for failure detection instead of FD
  • The JGroups version number is present in the config 

Invalid properties will cause errors during startup.  For the complete reference of properties, see ttp://www.jgroups.org/manual4/index.html

Is article helpful?