powered by Jive Software

Nobody can log into Spark this morning, can't log in to Openfire Admin console


This morning when we came in nobody can log into spark, even those that have had their passwords saved and should be able to automatically log in. Says their passwords are incorrect.

So I tried going into the openfire admin console. After clicking “Login” it doesn’t do anything for a while, and then on the openfire console window I get this:

Database setup or configuration error: Please verify your database settings and check the logs/error.log file for detailed error messages.

java.lang.IllegalArgumentException: java.sql.SQLException: ConnectionManager.getConnection() failed to obtain a connection after 11 retries. The exception from the last attempt is as follows: java.sql.SQLException: Network error IOExceptioEn: Connection timed out: conrnect

  • at org.jivesoftware.openfire.XMPPServer.verifyDataSource(XMPPServer.java:770)*

  • at org.jiveorfostware.openfire.XMPPServer.start(XMPPeSr starting the server. Please check the log files for more inforartvmoire.n.java:486)*

  • at org.jivesoftware.openfire.XMPPServer.(XMPPServer.java:216)*


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

  • at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)*

  • at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)*

  • at java.lang.reflect.Constructor.newInstance(Unknown Source)*

  • at java.lang.Class.newInstance(Unknown Source)*

  • at org.jivesoftware.openfire.starter.ServerStarter.start(ServerStarter.java:113)*

  • at org.jivesoftware.openfire.starter.ServerStarter.main(ServerStarter.java:58)*

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

  • at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)*

  • at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)*

  • at java.lang.reflect.Method.invoke(Unknown Source)*

  • at com.exe4j.runtime.LauncherEngine.launch(Unknown Source)*

  • at com.exe4j.runtime.WinLauncher.main(Unknown Source)*

  • at com.install4j.runtime.launcher.WinLauncher.main(Unknown Source)*

Caused by: java.sql.SQLException: ConnectionManager.getConnection() failed to obtain a connection after 11 retries. The exception from the last attempt is as follows: java.sql.SQLException: Network error IOException: Connection timed out: connect

  • at org.jivesoftware.database.DbConnectionManager.getConnection(DbConnectionManager .java:151)*

  • at org.jivesoftware.openfire.XMPPServer.verifyDataSource(XMPPServer.java:760)*

  • … 16 more*

Server halted

Please help? My OpenFire version is 3.9.1. Thank you!

The error says it can’t reach the database, so check your database.

I’m actually very new to this. I just got the job and my predecessor left before I started so I don’t know how this was set up. How can i tell where the database is if I can’t log onto the admin console? Is there another way? Thanks.

Check the Openfire installation directory, conf directory, open the openfire.xml file and look for at the bottom. Not sure if it will tell you the location though.

As it turns out, the database was saved in the server that crashed last week. I didn’t think it was there because people swear that Spark was working early this week.

I guess that leaves me with having to reinstall spark into another server? Does it have to have MS SQL or can i just install it on any server and remap the clients afterwards?


It doesn’t have to be an MS database. You can use MySQL or PostgreSQL also. Openfire also comes with built-in database option, which is not such robust, but works for small installations (but you should know that it is simply a text file and you won’t be able to do things that are possible with normal databases, like editing it directly, etc.). Not sure what you mean by remapping. If you install it with a different domain name, then yes, your users will have to login to other domain and you won’t have old groups and users, will have to create them again. Unless you were importing them from LDAP, so you can just import them again.