With the newest releast of Openfire (3.7.0) it was found that the clustering plugin would no longer work. Although understandable it made my life pretty difficult. So I decided to dive in and get it working with 3.7.0. Attached the the JAR file that I’ve compiled to get things working once again with clustering. However, I am still finding uncommon issues, which I’ve expressed below (so use the plugin at your own risk).
Notes:
It’s important to note that this has been tested with a Linux environment only! Although this is the case I don’t believe it will be a huge issue, but further testing will show from the user community.
Pre-req’s:
It’s important to note that there are few pre-req setups you must do prior to getting this up an running. They are expressed here:
- You must take the “tangosol-coherence-override.xml” file found within the plugin and place it within the root of your server (Example: “/” within Linux) otherwise coherence will use it’s default configuration, which yields Openfire errors.
- You must take the “coherence-cache-config.xml” file found within the plugin and place it within Openfire’s {openfire_home}/lib directory otherwise coherence will use it’s default configuration, which yields Openfire errors.
Neither of the above pre-req’s are desirable. If anyone has any advice on how to enable coherence to use the exiting xml files already within the plugin without having to push them to other locations upon the server, then that would be awesome. I am guessing the reason on why this needs to happen has something to do with how Openfire currently loads classes into it’s associated plugin classloaders?
Issues:
- The sessions page at times (quite randomly in fact) complains that it cannot find the information provided within with the session class (Address information). Although this might simply be a rendering issue at best, it does give way to the fact that there could potentially be syncronization issues with coherence. BUT, we have not have any user complaints, so I am going to weigh this against the fact that the session either expired or something else under the Openfire hood is simply not being caught. I’d love some feedback on this one.
This plugin has been within our production environment for a few weeks living within a cluster of 4 Openfire servers.
I hope this helps those who need this plugin as well as promote further feedback in regards the issues I’ve expressed.
Also, since this is a pre-existing plugin I am more than happy to commit the source to the repo for review. What’s the process to get something like this underway?
Cheers,
-Pat
p1.zip (421 Bytes)
clustering.jar (121437 Bytes)
clustering_src.zip (94100 Bytes)