EntityCapabilityManager should not use a clustered cache
The cache called "Entity Capabilities Pending Hashes" is a clustered cache. I think we can safely state that every Openfire node will serve the locally connected clients only. This means that we can replace the clustered cache with a local (non-clustered) cache or map. This would save us from a lot of cluster overhead!
This is a small change, will apply for 3.9.2.
Note that the cache names have changed, so this will affect the following named caches:
Entity Capabilities Users
These two caches will now be provisioned using a local (non-clustered) cache factory.
Hi Tom, Could you kindly provide some feedback on this issue? Perhaps it can be closed. Thank you
Is this ticket still relevant with the recent clustering changes that went into 3.8.0 ?
In a clustered setup, Openfire uses caches that can be configured to share its content over all cluster nodes.
"Entity Capabilities Pending Hashes" can very quickly be recalculated. The overhead that sharing the content of those caches between cluster nodes brings can easily be prevented (the overhead is considerable). There's no need to share the content at all, as every cluster node can quickly and easily calculate the same hash locally.
Could you comment on this issue again?