Persistent muc rooms lost on service restart

Hello,

I’m using Openfire 3.7.1 on windows server 2003 with standard setup (embedded database).

I have created a few persistent rooms but they are lost each time I restart the openfire service. I dont’ understand why since all other settings (including group chat services) are persisted.

So any idea why the persistent muc rooms are not persisted in the embedded database?

Thank you,

Arnaud

Hey Arnaud,

Sorry to resurrect this thread, but I’m having the same problem 3 years later. It looks like the MUC rooms are created and stored in memory but never written to the embedded database, regardless of persistency values.

Not sure how to fix this.

Michel

Are you also using 3.7.1? Because persistent rooms survive restarts for me on 3.10.2 (embedded db).

I’m on 3.10.0.

First, you should upgrade to 3.10.2 (this version fixes problems with CPU usage). There is not a huge chance it will fix the MUC problem, but still worth it. Other than that, checking logs for any relevant information.

Edit: I should mention I misspoke in my previous post. I’m using MySQL not the embedded database.

Just upgraded to 3.10.2 this morning. The behavior is unchanged.

In the logs, sometimes I get this error when terminating the server (bin/openfire stop):

09:40:11.106 [Thread-3] ERROR o.j.openfire.spi.PresenceManagerImpl - Couldn't perform the operation prepareStatement: You can't perform any operations on this connection. It has been automatically closed by Proxool for some reason (see logs). java.sql.SQLException: Couldn't perform the operation prepareStatement: You can't perform any operations on this connection. It has been automatically closed by Proxool for some reason (see logs). at org.logicalcobwebs.proxool.WrappedConnection.invoke(WrappedConnection.java:207) ~[openfire.jar:na] at org.logicalcobwebs.proxool.WrappedConnection.intercept(WrappedConnection.java:87) ~[openfire.jar:na] at com.mysql.jdbc.ConnectionProperties$$EnhancerByProxool$$d652ed3e.prepareStatement() ~[openfire.jar:na] at org.jivesoftware.openfire.spi.PresenceManagerImpl.deleteOfflinePresenceFromDB(PresenceManagerImpl.java:219) [openfire.jar:na] at org.jivesoftware.openfire.spi.PresenceManagerImpl.writeToDatabase(PresenceManagerImpl.java:274) [openfire.jar:na] at org.jivesoftware.openfire.spi.PresenceManagerImpl.userUnavailable(PresenceManagerImpl.java:268) [openfire.jar:na] at org.jivesoftware.openfire.handler.PresenceUpdateHandler.process(PresenceUpdateHandler.java:170) [openfire.jar:na] at org.jivesoftware.openfire.handler.PresenceUpdateHandler.process(PresenceUpdateHandler.java:137) [openfire.jar:na] at org.jivesoftware.openfire.handler.PresenceUpdateHandler.process(PresenceUpdateHandler.java:201) [openfire.jar:na] at org.jivesoftware.openfire.PresenceRouter.handle(PresenceRouter.java:148) [openfire.jar:na] at org.jivesoftware.openfire.PresenceRouter.route(PresenceRouter.java:84) [openfire.jar:na] at org.jivesoftware.openfire.spi.PacketRouterImpl.route(PacketRouterImpl.java:84) [openfire.jar:na] at org.jivesoftware.openfire.SessionManager$ClientSessionListener.onConnectionClose(SessionManager.java:1242) [openfire.jar:na] at org.jivesoftware.openfire.net.VirtualConnection.notifyCloseListeners(VirtualConnection.java:218) [openfire.jar:na] at org.jivesoftware.openfire.net.VirtualConnection.close(VirtualConnection.java:194) [openfire.jar:na] at org.jivesoftware.openfire.net.VirtualConnection.close(VirtualConnection.java:172) [openfire.jar:na] at org.jivesoftware.openfire.http.HttpSession$HttpVirtualConnection.systemShutdown(HttpSession.java:1146) [openfire.jar:na] at org.jivesoftware.openfire.spi.LocalRoutingTable.stop(LocalRoutingTable.java:146) [openfire.jar:na] at org.jivesoftware.openfire.spi.RoutingTableImpl.stop(RoutingTableImpl.java:953) [openfire.jar:na] at org.jivesoftware.openfire.XMPPServer.shutdownServer(XMPPServer.java:995) [openfire.jar:na] at org.jivesoftware.openfire.XMPPServer.access$800(XMPPServer.java:148) [openfire.jar:na] at org.jivesoftware.openfire.XMPPServer$ShutdownHookThread.run(XMPPServer.java:941) [openfire.jar:na]

but most of the time I don’t. Doesn’t seem like it’s related to muc persistence though.