powered by Jive Software

LocalMUCRoom savedToDb state change not propagated to other nodes


#1

Hi, I’m using openfire 4.3.2 in clustered installation.

Whenever a LocalMUCRoom persistent room’s saveToDb state is toggled,

other cluster nodes should be made aware of the update.

Otherwise, other nodes will not be able to delete it from database,

only the node where the room was created (via RestAPI) will be able to delete it from db.

here is an excerpt from master
LocalMUCRoom.java

and, this change seem to fix the issue for me:

    @Override
    public void saveToDB() {
        // Make the room persistent
        MUCPersistenceManager.saveToDB(this);
        if (!savedToDB) {
            // Set that the room is now in the DB
            savedToDB = true;

            // Notify other cluster nodes that the room is now in DB
            CacheFactory.doClusterTask(new RoomUpdatedEvent(this));   
        
            // Save the existing room owners to the DB

Thank so much for your time.