powered by Jive Software

Locked out of admin web gui - using LDAP

I’m not sure what happened, but this is the second time it has. Last time I “fixed” it by nuking the VM and starting over from scratch. That time I had to anyway, it was a test box. This I’ve got a little more invested in and would like to save.

We’ve got 3.6.4 pointed at our ClearOS LDAP. I was in the admin console still trying to figure out what to do with the chat groups and was basically clicking around looking at all the setting pages for the server when I got kicked out to the login page and now can no longer login. I get the: “Login failed: make sure your username and password are correct and that you’re an admin or moderator.”

Now I can’t get in.

Again this is using LDAP for auth and the embedded database. I found the openfire_mysl with the insert into ofUser for admin with pass admin but that doesn’t get me in either.

Anyone?

More info. error.log is full of these now:

2010.08.31 09:22:57 [org.jivesoftware.openfire.XMPPServer.start(XMPPServer.java:457)]
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: The database is already in use by another process: org.hsqldb.persist.NIOLockFile@50bade09[file =/opt/openfire/embedded-db/openfire.lck, exists=true, locked=false, valid=false, fl =null]: java.lang.Exception: checkHeartbeat(): lock file [/opt/openfire/embedded-db/openfire.lck] is presumably locked by another process.
at org.jivesoftware.openfire.XMPPServer.verifyDataSource(XMPPServer.java:710)
at org.jivesoftware.openfire.XMPPServer.start(XMPPServer.java:427)
at org.jivesoftware.openfire.XMPPServer.(XMPPServer.java:161)
at 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.newInstance0(Unknown Source)
at java.lang.Class.newInstance(Unknown Source)
at org.jivesoftware.openfire.starter.ServerStarter.start(ServerStarter.java:106)
at org.jivesoftware.openfire.starter.ServerStarter.main(ServerStarter.java:51)
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: The database is already in use by another process: org.hsqldb.persist.NIOLockFile@50bade09[file =/opt/openfire/embedded-db/openfire.lck, exists=true, locked=false, valid=false, fl =null]: java.lang.Exception: checkHeartbeat(): lock file [/opt/openfire/embedded-db/openfire.lck] is presumably locked by another process.
at org.jivesoftware.database.DbConnectionManager.getConnection(DbConnectionManager .java:124)
at org.jivesoftware.openfire.XMPPServer.verifyDataSource(XMPPServer.java:698)
… 10 more

So it would seem somehow it got locked but I’m not sure why. This is Cent5.5 and I’m the only one working on it. Files are owned by “daemon” and I’ve tried restarting the openfire service as well as rebooted the server.

Is just deleting the lock file going to work? For a fix yes, but that doesn’t address the “why” part of the problem.

Okay so stopping the openfire service closes and deletes the lock file as normal. In other words it doesn’t seem to have a bearing on the problem. After stopping/starting a couple times I also don’t see any new messages in the error.log file. So I still don’t know what’s wrong.

Fixed.

In trying to understand how it builds the user list I was screwing around with the LDAP settings. Well once you set the user id to cn instead of uid it doesn’t know who first.lastname is anymore. Going back through setup allowed me to set the user id back correctly. Now I still have to figure out how to only list/allow users in the chat group: http://community.igniterealtime.org/thread/42675?tstart=0