Openfire keeps erroring out following upgrade from 3.2.2

Openfire keeps getting to the state where it won’‘t let my users log in (using AD authentication), it just complains of invalid username or password. Last time it happened, I just restarted the service an I was OK (this was Thursday). Today, that doesn’'t seem to be happening.

There are lots of errors in the event log (already reported in the enterprise discussion forums last week).

I now have a dead server. Can anyone help please!

OF 3.3, Win 2003, SQL server, spark 2.5 clients, AD auth.

2007.04.23 11:20:04 [org.jivesoftware.database.SequenceManager.getNextBlock(SequenceManager.java:22 3)

]

java.sql.SQLException: [SQLServer 2000 Driver for JDBC]Can’'t start manual transaction mode because there are cloned connections.

at com.microsoft.jdbc.base.BaseExceptions.createException(Unknown Source)

at com.microsoft.jdbc.base.BaseExceptions.getException(Unknown Source)

at com.microsoft.jdbc.base.BaseConnection.setAutoCommit(Unknown Source)

at org.jivesoftware.database.AbstractConnection.setAutoCommit(AbstractConnection.j ava:48)

at org.jivesoftware.database.DbConnectionManager.getTransactionConnection(DbConnec tionManager.java:118)

at org.jivesoftware.database.SequenceManager.getNextBlock(SequenceManager.java:185 )

at org.jivesoftware.database.SequenceManager.nextUniqueID(SequenceManager.java:156 )

at org.jivesoftware.database.SequenceManager.nextID(SequenceManager.java:74)

at org.jivesoftware.database.SequenceManager.nextID(SequenceManager.java:110)

at com.jivesoftware.openfire.enterprise.archive.Conversation.insertIntoDb(Conversa tion.java:448)

at com.jivesoftware.openfire.enterprise.archive.Conversation.(Conversation.java:12 1)

at com.jivesoftware.openfire.enterprise.archive.ConversationManager.processMessage (ConversationManager.java:528)

at com.jivesoftware.openfire.enterprise.archive.ArchiveInterceptor.interceptPacket (ArchiveInterceptor.java:60)

at org.jivesoftware.openfire.interceptor.InterceptorManager.invokeInterceptors(Int erceptorManager.java:227)

at org.jivesoftware.openfire.MessageRouter.route(MessageRouter.java:124)

at org.jivesoftware.openfire.spi.PacketRouterImpl.route(PacketRouterImpl.java:71)

at org.jivesoftware.openfire.spi.PacketRouterImpl.route(PacketRouterImpl.java:53)

at org.jivesoftware.openfire.component.InternalComponentManager.sendPacket(Interna lComponentManager.java:186)

at org.jivesoftware.openfire.gateway.BaseTransport.sendPacket(BaseTransport.java:1 495)

at org.jivesoftware.openfire.gateway.BaseTransport.sendMessage(BaseTransport.java: 1522)

at org.jivesoftware.openfire.gateway.BaseTransport.sendMessage(BaseTransport.java: 1533)

at org.jivesoftware.openfire.gateway.protocols.msn.MSNListener.instantMessageRecei ved(MSNListener.java:80)

at net.sf.jml.impl.AbstractMessenger.fireInstantMessageReceived(AbstractMessenger. java:165)

at net.sf.jml.message.MsnInstantMessage.messageReceived(MsnInstantMessage.java:251 )

at net.sf.jml.message.IncomingMimeMessage.messageReceived(IncomingMimeMessage.java :55)

at net.sf.jml.protocol.MsnSession$1.messageReceived(MsnSession.java:105)

at net.sf.cindy.impl.AbstractSession$6.doRun(AbstractSession.java:341)

at net.sf.cindy.impl.AbstractSession$DispatchObject.run(AbstractSession.java:395)

at net.sf.cindy.impl.SimpleDispatcher.dispatch(SimpleDispatcher.java:35)

at net.sf.cindy.impl.AbstractSession.dispatch(AbstractSession.java:249)

at net.sf.cindy.impl.AbstractSession.dispatchMessageReceived(AbstractSession.java: 335)

at net.sf.cindy.impl.StreamChannelSession.recognizeMessageAndDispatch(StreamChanne lSession.java:77)

at net.sf.cindy.impl.StreamChannelSession.readFromChannel(StreamChannelSession.jav a:53)

at net.sf.cindy.impl.ChannelSession.onReadable(ChannelSession.java:212)

at net.sf.cindy.impl.ChannelSession.onEvent(ChannelSession.java:134)

at net.sf.cindy.impl.SocketSession.onEvent(SocketSession.java:119)

at net.sf.cindy.impl.SimpleEventGenerator.processKey(SimpleEventGenerator.java:212 )

at net.sf.cindy.impl.SimpleEventGenerator.run(SimpleEventGenerator.java:192)

at net.sf.cindy.impl.SimpleEventGenerator.access$000(SimpleEventGenerator.java:54)

at net.sf.cindy.impl.SimpleEventGenerator$1.run(SimpleEventGenerator.java:115)

2007.04.23 11:20:04 [org.jivesoftware.database.SequenceManager.getNextBlock(SequenceManager.java:23 9)

] WARNING: failed to obtain next ID block due to thread contention. Trying again…

2007.04.23 11:25:46 [com.jivesoftware.openfire.enterprise.archive.ArchiveIndexer.indexConversations (ArchiveIndexer.java:510)

]

java.sql.SQLException: [SQLServer 2000 Driver for JDBC]ResultSet can not re-read row data for column 2.

at com.microsoft.jdbc.base.BaseExceptions.createException(Unknown Source)

at com.microsoft.jdbc.base.BaseExceptions.getException(Unknown Source)

at com.microsoft.jdbc.base.BaseResultSet.validateColumnIndex(Unknown Source)

at com.microsoft.jdbc.base.BaseResultSet.getLong(Unknown Source)

at com.jivesoftware.openfire.enterprise.archive.ArchiveIndexer.indexConversations( ArchiveIndexer.java:486)

at com.jivesoftware.openfire.enterprise.archive.ArchiveIndexer.updateIndex(Archive Indexer.java:276)

at com.jivesoftware.openfire.enterprise.archive.ArchiveIndexer$2.run(ArchiveIndexe r.java:153)

at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)

at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source)

at java.util.concurrent.FutureTask.run(Unknown Source)

at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)

at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)

at java.lang.Thread.run(Unknown Source)

2007.04.23 11:40:46 [com.jivesoftware.openfire.enterprise.archive.ArchiveIndexer.indexConversations (ArchiveIndexer.java:510)

]

java.sql.SQLException: [SQLServer 2000 Driver for JDBC]ResultSet can not re-read row data for column 2.

at com.microsoft.jdbc.base.BaseExceptions.createException(Unknown Source)

at com.microsoft.jdbc.base.BaseExceptions.getException(Unknown Source)

at com.microsoft.jdbc.base.BaseResultSet.validateColumnIndex(Unknown Source)

at com.microsoft.jdbc.base.BaseResultSet.getLong(Unknown Source)

at com.jivesoftware.openfire.enterprise.archive.ArchiveIndexer.indexConversations( ArchiveIndexer.java:486)

at com.jivesoftware.openfire.enterprise.archive.ArchiveIndexer.updateIndex(Archive Indexer.java:276)

at com.jivesoftware.openfire.enterprise.archive.ArchiveIndexer$2.run(ArchiveIndexe r.java:153)

at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)

at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source)

at java.util.concurrent.FutureTask.run(Unknown Source)

at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)

at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)

at java.lang.Thread.run(Unknown Source)

2007.04.23 11:48:37 [org.jivesoftware.database.SequenceManager.getNextBlock(SequenceManager.java:22 3)

]

java.sql.SQLException: [SQLServer 2000 Driver for JDBC]Can’'t start manual transaction mode because there are cloned connections.

at com.microsoft.jdbc.base.BaseExceptions.createException(Unknown Source)

at com.microsoft.jdbc.base.BaseExceptions.getException(Unknown Source)

at com.microsoft.jdbc.base.BaseConnection.setAutoCommit(Unknown Source)

at org.jivesoftware.database.AbstractConnection.setAutoCommit(AbstractConnection.j ava:48)

at org.jivesoftware.database.DbConnectionManager.getTransactionConnection(DbConnec tionManager.java:118)

at org.jivesoftware.database.SequenceManager.getNextBlock(SequenceManager.java:185 )

at org.jivesoftware.database.SequenceManager.nextUniqueID(SequenceManager.java:156 )

at org.jivesoftware.database.SequenceManager.nextID(SequenceManager.java:74)

at org.jivesoftware.database.SequenceManager.nextID(SequenceManager.java:110)

at com.jivesoftware.openfire.enterprise.archive.Conversation.insertIntoDb(Conversa tion.java:448)

at com.jivesoftware.openfire.enterprise.archive.Conversation.(Conversation.java:12 1)

at com.jivesoftware.openfire.enterprise.archive.ConversationManager.processMessage (ConversationManager.java:528)

at com.jivesoftware.openfire.enterprise.archive.ArchiveInterceptor.interceptPacket (ArchiveInterceptor.java:60)

at org.jivesoftware.openfire.interceptor.InterceptorManager.invokeInterceptors(Int erceptorManager.java:227)

at org.jivesoftware.openfire.MessageRouter.route(MessageRouter.java:124)

at org.jivesoftware.openfire.spi.PacketRouterImpl.route(PacketRouterImpl.java:71)

at org.jivesoftware.openfire.net.StanzaHandler.processMessage(StanzaHandler.java:3 23)

at org.jivesoftware.openfire.net.ClientStanzaHandler.processMessage(ClientStanzaHa ndler.java:91)

at org.jivesoftware.openfire.net.StanzaHandler.process(StanzaHandler.java:186)

at org.jivesoftware.openfire.net.StanzaHandler.process(StanzaHandler.java:153)

at org.jivesoftware.openfire.nio.ConnectionHandler.messageReceived(ConnectionHandl er.java:132)

at org.apache.mina.common.support.AbstractIoFilterChain$TailFilter.messageReceived (AbstractIoFilterChain.java:703)

at org.apache.mina.common.support.AbstractIoFilterChain.callNextMessageReceived(Ab stractIoFilterChain.java:362)

at org.apache.mina.common.support.AbstractIoFilterChain.access$1100(AbstractIoFilt erChain.java:54)

at org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1.messageReceive d(AbstractIoFilterChain.java:800)

at org.apache.mina.filter.codec.support.SimpleProtocolDecoderOutput.flush(SimplePr otocolDecoderOutput.java:62)

at org.apache.mina.filter.codec.ProtocolCodecFilter.messageReceived(ProtocolCodecF ilter.java:200)

at org.apache.mina.common.support.AbstractIoFilterChain.callNextMessageReceived(Ab stractIoFilterChain.java:362)

at org.apache.mina.common.support.AbstractIoFilterChain.access$1100(AbstractIoFilt erChain.java:54)

at org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1.messageReceive d(AbstractIoFilterChain.java:800)

at org.apache.mina.filter.executor.ExecutorFilter.processEvent(ExecutorFilter.java :266)

at org.apache.mina.filter.executor.ExecutorFilter$ProcessEventsRunnable.run(Execut orFilter.java:326)

at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)

at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)

at java.lang.Thread.run(Unknown Source)

2007.04.23 11:48:37 [org.jivesoftware.database.SequenceManager.getNextBlock(SequenceManager.java:23 9)

] WARNING: failed to obtain next ID block due to thread contention. Trying again…

2007.04.23 11:49:08 [org.jivesoftware.database.SequenceManager.getNextBlock(SequenceManager.java:22 3)

]

java.sql.SQLException: [SQLServer 2000 Driver for JDBC]Can’'t start manual transaction mode because there are cloned connections.

at com.microsoft.jdbc.base.BaseExceptions.createException(Unknown Source)

at com.microsoft.jdbc.base.BaseExceptions.getException(Unknown Source)

at com.microsoft.jdbc.base.BaseConnection.setAutoCommit(Unknown Source)

at org.jivesoftware.database.AbstractConnection.setAutoCommit(AbstractConnection.j ava:48)

at org.jivesoftware.database.DbConnectionManager.getTransactionConnection(DbConnec tionManager.java:118)

at org.jivesoftware.database.SequenceManager.getNextBlock(SequenceManager.java:185 )

at org.jivesoftware.database.SequenceManager.nextUniqueID(SequenceManager.java:156 )

at org.jivesoftware.database.SequenceManager.nextID(SequenceManager.java:74)

at org.jivesoftware.database.SequenceManager.nextID(SequenceManager.java:110)

at com.jivesoftware.openfire.enterprise.archive.Conversation.insertIntoDb(Conversa tion.java:448)

at com.jivesoftware.openfire.enterprise.archive.Conversation.(Conversation.java:12 1)

at com.jivesoftware.openfire.enterprise.archive.ConversationManager.processMessage (ConversationManager.java:528)

at com.jivesoftware.openfire.enterprise.archive.ArchiveInterceptor.interceptPacket (ArchiveInterceptor.java:60)

at org.jivesoftware.openfire.interceptor.InterceptorManager.invokeInterceptors(Int erceptorManager.java:227)

at org.jivesoftware.openfire.MessageRouter.route(MessageRouter.java:124)

at org.jivesoftware.openfire.spi.PacketRouterImpl.route(PacketRouterImpl.java:71)

at org.jivesoftware.openfire.net.StanzaHandler.processMessage(StanzaHandler.java:3 23)

at org.jivesoftware.openfire.net.ClientStanzaHandler.processMessage(ClientStanzaHa ndler.java:91)

at org.jivesoftware.openfire.net.StanzaHandler.process(StanzaHandler.java:186)

at org.jivesoftware.openfire.net.StanzaHandler.process(StanzaHandler.java:153)

at org.jivesoftware.openfire.nio.ConnectionHandler.messageReceived(ConnectionHandl er.java:132)

at org.apache.mina.common.support.AbstractIoFilterChain$TailFilter.messageReceived (AbstractIoFilterChain.java:703)

at org.apache.mina.common.support.AbstractIoFilterChain.callNextMessageReceived(Ab stractIoFilterChain.java:362)

at org.apache.mina.common.support.AbstractIoFilterChain.access$1100(AbstractIoFilt erChain.java:54)

at org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1.messageReceive d(AbstractIoFilterChain.java:800)

at org.apache.mina.filter.codec.support.SimpleProtocolDecoderOutput.flush(SimplePr otocolDecoderOutput.java:62)

at org.apache.mina.filter.codec.ProtocolCodecFilter.messageReceived(ProtocolCodecF ilter.java:200)

at org.apache.mina.common.support.AbstractIoFilterChain.callNextMessageReceived(Ab stractIoFilterChain.java:362)

at org.apache.mina.common.support.AbstractIoFilterChain.access$1100(AbstractIoFilt erChain.java:54)

at org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1.messageReceive d(AbstractIoFilterChain.java:800)

at org.apache.mina.filter.executor.ExecutorFilter.processEvent(ExecutorFilter.java :266)

at org.apache.mina.filter.executor.ExecutorFilter$ProcessEventsRunnable.run(Execut orFilter.java:326)

at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)

at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)

at java.lang.Thread.run(Unknown Source)

2007.04.23 11:49:08 [org.jivesoftware.database.SequenceManager.getNextBlock(SequenceManager.java:23 9)

] WARNING: failed to obtain next ID block due to thread contention. Trying again…

2007.04.23 11:51:01 [org.jivesoftware.database.SequenceManager.getNextBlock(SequenceManager.java:22 3)

]

java.sql.SQLException: [SQLServer 2000 Driver for JDBC]Can’'t start manual transaction mode because there are cloned connections.

at com.microsoft.jdbc.base.BaseExceptions.createException(Unknown Source)

at com.microsoft.jdbc.base.BaseExceptions.getException(Unknown Source)

at com.microsoft.jdbc.base.BaseConnection.setAutoCommit(Unknown Source)

at org.jivesoftware.database.AbstractConnection.setAutoCommit(AbstractConnection.j ava:48)

at org.jivesoftware.database.DbConnectionManager.getTransactionConnection(DbConnec tionManager.java:118)

at org.jivesoftware.database.SequenceManager.getNextBlock(SequenceManager.java:185 )

at org.jivesoftware.database.SequenceManager.nextUniqueID(SequenceManager.java:156 )

at org.jivesoftware.database.SequenceManager.nextID(SequenceManager.java:74)

at org.jivesoftware.database.SequenceManager.nextID(SequenceManager.java:110)

at com.jivesoftware.openfire.enterprise.archive.Conversation.insertIntoDb(Conversa tion.java:448)

at com.jivesoftware.openfire.enterprise.archive.Conversation.(Conversation.java:12 1)

at com.jivesoftware.openfire.enterprise.archive.ConversationManager.processMessage (ConversationManager.java:528)

at com.jivesoftware.openfire.enterprise.archive.ArchiveInterceptor.interceptPacket (ArchiveInterceptor.java:60)

at org.jivesoftware.openfire.interceptor.InterceptorManager.invokeInterceptors(Int erceptorManager.java:227)

at org.jivesoftware.openfire.MessageRouter.route(MessageRouter.java:124)

at org.jivesoftware.openfire.spi.PacketRouterImpl.route(PacketRouterImpl.java:71)

at org.jivesoftware.openfire.net.StanzaHandler.processMessage(StanzaHandler.java:3 23)

at org.jivesoftware.openfire.net.ClientStanzaHandler.processMessage(ClientStanzaHa ndler.java:91)

at org.jivesoftware.openfire.net.StanzaHandler.process(StanzaHandler.java:186)

at org.jivesoftware.openfire.net.StanzaHandler.process(StanzaHandler.java:153)

at org.jivesoftware.openfire.nio.ConnectionHandler.messageReceived(ConnectionHandl er.java:132)

at org.apache.mina.common.support.AbstractIoFilterChain$TailFilter.messageReceived (AbstractIoFilterChain.java:703)

at org.apache.mina.common.support.AbstractIoFilterChain.callNextMessageReceived(Ab stractIoFilterChain.java:362)

at org.apache.mina.common.support.AbstractIoFilterChain.access$1100(AbstractIoFilt erChain.java:54)

at org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1.messageReceive d(AbstractIoFilterChain.java:800)

at org.apache.mina.filter.codec.support.SimpleProtocolDecoderOutput.flush(SimplePr otocolDecoderOutput.java:62)

at org.apache.mina.filter.codec.ProtocolCodecFilter.messageReceived(ProtocolCodecF ilter.java:200)

at org.apache.mina.common.support.AbstractIoFilterChain.callNextMessageReceived(Ab stractIoFilterChain.java:362)

at org.apache.mina.common.support.AbstractIoFilterChain.access$1100(AbstractIoFilt erChain.java:54)

at org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1.messageReceive d(AbstractIoFilterChain.java:800)

at org.apache.mina.filter.executor.ExecutorFilter.processEvent(ExecutorFilter.java :266)

at org.apache.mina.filter.executor.ExecutorFilter$ProcessEventsRunnable.run(Execut orFilter.java:326)

at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)

at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)

at java.lang.Thread.run(Unknown Source)

2007.04.23 11:51:01 [org.jivesoftware.database.SequenceManager.getNextBlock(SequenceManager.java:23 9)

] WARNING: failed to obtain next ID block due to thread contention. Trying again…

I should also ad that I can’'t log into the admin console either now!

Please help!

A bit of progress, I have removed the enterprise plugin and deleted the enterprise folder and restarted. Clients can now log in.

So what’‘s up with the Enterprise plugin then? I don’'t think it upgraded properly.

I had exactly the same issue this morning (failed authentication for everyone).

The logs indicated an LDAP error (java.io.IOException: An established connection was aborted by the software in your host).

However, it’'s now seemingly managed to fix itself. We upgraded to Openfire about 2 days ago and had never seen this before.

However, we don’‘t use Enterprise so it my case it’'s not related to that.

D

Message was edited by: DeeJay

I have to say that I’‘m a bit surprised and disappointed that the 2 issues I had as a result of evaluating the enterprise plugin have so far gone unresolved. I’‘m not likely to spend money on it when I can’'t even successfully evaluate it.

Hey Steve,

I’'m sorry to hear that you are having trouble with MS-SQL. A quick google searched revealed that this might very well be a problem with the JDBC drivers that you are using. Check out the following links:

http://james.apache.org/server/FAQ.html#15

http://forum.java.sun.com/thread.jspa?threadID=497697&messageID=2349263

http://www.hibernate.org/120.html

“Simply add SelectMethod=Cursor; to your connection string. There’'s a MS knowledge base article with more information.”

Regards,

– Gato

Thanks for the feedback, 2 questions:

  1. Is this likely to affect performance in OpenFire?

  2. Is there an alternative driver to use if the answer to number 1 is yes?

thanks

Steve