Clustering problems

Hi all.

Recently I tried to create an OpenFire cluster for redundancy. I faced some problems with this:

  1. Postgresql database misses indexes for relpication.

As my servers would be geographically distant I tried using Bucardo for multi-master replication so each server cah have it’s own database in case of a split. Bucardo is one of the most common tools to use with Postgresql.

While setting up replication I found that two tables do miss primary keys. That’s a prerequisite for good multi-master replication. I solved this by adding two indexes:

alter table ofmucconversationlog add primary key (roomid, sender, logtime);
alter table ofpubsubnodegroups add primary key (serviceid, nodeid, rostergroup);
  1. Cluster fails to start.

When I fully created first server (even without setting up replication) I installed Hazelcast plugin and enabled cluster. OpenFire process becomes semi-locked after this, it can’t be stopped with service openfired stop. I had to kill it by hand.

  1. FastPath doesn’t work.

When I install FastPath on one single server it works correctly (meaning I installed webchat plugin from http://community.igniterealtime.org/message/221248#221248). But when I enable clustering FastPath stops working - I can’t see it in Spark and it’s pages gets garbled.

  1. WebChat is bound to a host name supplied.

When installing WebChat plugin it asks for the server location. I want to specify current server, not just any other server in the cluster, so I need to enter localhost.localdomain. After this WebChat looks for the workgroups in form demo@workgroup.localhost.localdomain. Would there be any possibility to supply both parameters (server host and working domain) separately?