powered by Jive Software

Upgrade from 3.6.3 on Windows to 4.1.5 on Linux - Oracle DB

how do I go about upgrading openfire from 3…6.3 instance on windows to 4.1.5 Linux

  1. exported data from current DB to new Oracle DB server/instance

  2. installed a fresh copy of openfire 4.1.5 on Linux,

  3. setup Linux to connect to new DB instance/server, authenticate to LDAP, matching my 3.6.3 server

  4. confirmed that the schema got updated to the latest 25 version

restarted server and it fails with a DB error

2017.08.24 16:02:31 org.jivesoftware.openfire.muc.spi.MUCPersistenceManager - A database error prevented MUC rooms to be loaded from the database.

java.sql.SQLRecoverableException: Closed Connection: next

    at oracle.jdbc.driver.OracleResultSetImpl.next(OracleResultSetImpl.java:547)

    at org.jivesoftware.openfire.muc.spi.MUCPersistenceManager.loadHistory(MUCPersiste nceManager.java:591)

    at org.jivesoftware.openfire.muc.spi.MUCPersistenceManager.loadRoomsFromDB(MUCPers istenceManager.java:471)

    at org.jivesoftware.openfire.muc.spi.MultiUserChatServiceImpl.start(MultiUserChatS erviceImpl.java:1287)

    at org.jivesoftware.openfire.component.InternalComponentManager.addComponent(Inter nalComponentManager.java:159)

    at org.jivesoftware.openfire.muc.MultiUserChatManager.registerMultiUserChatService (MultiUserChatManager.java:161)

    at org.jivesoftware.openfire.muc.MultiUserChatManager.start(MultiUserChatManager.j ava:112)

    at org.jivesoftware.openfire.XMPPServer.startModules(XMPPServer.java:561)

    at org.jivesoftware.openfire.XMPPServer.start(XMPPServer.java:430)

    at org.jivesoftware.openfire.XMPPServer.<init>(XMPPServer.java:163)

    at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)

    at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessor Impl.java:62)

    at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructor AccessorImpl.java:45)

    at java.lang.reflect.Constructor.newInstance(Constructor.java:423)

    at java.lang.Class.newInstance(Class.java:442)

    at org.jivesoftware.openfire.starter.ServerStarter.start(ServerStarter.java:105)

    at org.jivesoftware.openfire.starter.ServerStarter.main(ServerStarter.java:56)

    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)

    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.ja va:43)

    at java.lang.reflect.Method.invoke(Method.java:498)

    at com.exe4j.runtime.LauncherEngine.launch(LauncherEngine.java:65)

    at com.install4j.runtime.launcher.UnixLauncher.main(UnixLauncher.java:60)

: 472,2

Thanks for reporting this.

So MUCPersistenceManager.java:591 has to do with loading the room history. Are you able to view the Oracle database server errors to see if it reports a bad SQL statement syntax or something?

In general, and sadly, our Oracle support is rather poor due to no developers actively using that database for their development nor deployment. We could always use an Oracle expert to help out with testing and development. We are also thankful for the few Oracle pull requests that get made against our Github repository, but we often have no means to validate the requested change being made.