If you examine org.jivesoftware.util.cache.DefaultCache then there are a number of places where the cache size/lifetime is used to clear out entries by calling either
cullCache(); // Delete old entries when the cache is too large
deleteExpiredEntries(); // Delete entries when they have expired
However, the Hazelcast implementation of that cache, org.jivesoftware.openfire.plugin.util.cache.ClusteredCache in plugins/hazelcast has no such functionality. Either
a) ClusteredCache should also purge the cache when appropriate, or
b) The Cache interface should document that the purging doesn’t occur with Hazelcast clustered caches.