Internal server error from presence messages

After some time (minutes to hours) the java process is using 1 of 2 cpu’s completely, then 2 of 2 and stops servicing. About this time I get in the error log (openfire_2015-03-23.deb):

2015.03.24 17:33:30 org.jivesoftware.openfire.nio.NIOConnection - Failed to deliver packet: <presence to="someone@domain.de/PC_Pidgin" from="talk@co

nference.domain.de/someone" type=“unavailable”>1<c xmlns=“http://jabber.org/protocol/caps” node=“http://pidgin.im/” hash=“sha-1” ver=

“AcN1/PEN8nq7AHD+9jpxMV4U6YM=” ext=“voice-v1 camera-v1 video-v1”/>56ae7e2105c682afccb6922cff2d497fd5dc2260</ph oto

<

/x>

2015.03.24 17:33:30 org.jivesoftware.openfire.session.LocalSession - Internal server error

java.lang.IllegalStateException: Connection closed

at org.jivesoftware.openfire.nio.NIOConnection.deliver(NIOConnection.java:264)

at org.jivesoftware.openfire.session.LocalClientSession.deliver(LocalClientSession .java:857)

at org.jivesoftware.openfire.session.LocalSession.process(LocalSession.java:289)

at org.jivesoftware.openfire.spi.RoutingTableImpl.routeToLocalDomain(RoutingTableI mpl.java:354)

at org.jivesoftware.openfire.spi.RoutingTableImpl.routePacket(RoutingTableImpl.jav a:239)

at org.jivesoftware.openfire.PresenceRouter.handle(PresenceRouter.java:170)

at org.jivesoftware.openfire.PresenceRouter.route(PresenceRouter.java:84)

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

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

at org.jivesoftware.openfire.muc.spi.LocalMUCRole.send(LocalMUCRole.java:266)

at org.jivesoftware.openfire.muc.spi.LocalMUCRoom.broadcast(LocalMUCRoom.java:1153 )

at org.jivesoftware.openfire.muc.cluster.BroadcastPresenceRequest$1.run(BroadcastP resenceRequest.java:71)

at org.jivesoftware.openfire.muc.cluster.MUCRoomTask.execute(MUCRoomTask.java:85)

at org.jivesoftware.openfire.muc.cluster.BroadcastPresenceRequest.run(BroadcastPre senceRequest.java:69)

at org.jivesoftware.openfire.muc.spi.LocalMUCRoom.broadcastPresence(LocalMUCRoom.j ava:1106)

at org.jivesoftware.openfire.muc.spi.LocalMUCRoom.leaveRoom(LocalMUCRoom.java:826)

at org.jivesoftware.openfire.muc.spi.LocalMUCUser.process(LocalMUCUser.java:552)

at org.jivesoftware.openfire.muc.spi.LocalMUCUser.process(LocalMUCUser.java:197)

at org.jivesoftware.openfire.muc.spi.MultiUserChatServiceImpl.processPacket(MultiU serChatServiceImpl.java:324)

at org.jivesoftware.openfire.component.InternalComponentManager$RoutableComponents .process(InternalComponentManager.java:591)

at org.jivesoftware.openfire.spi.RoutingTableImpl.routeToComponent(RoutingTableImp l.java:401)

at org.jivesoftware.openfire.spi.RoutingTableImpl.routePacket(RoutingTableImpl.jav a:243)

at org.jivesoftware.openfire.PresenceRouter.handle(PresenceRouter.java:170)

at org.jivesoftware.openfire.PresenceRouter.route(PresenceRouter.java:84)

at org.jivesoftware.openfire.handler.PresenceUpdateHandler.broadcastUnavailableFor DirectedPresences(PresenceUpdateHandler.java:489)

at org.jivesoftware.openfire.handler.PresenceUpdateHandler.process(PresenceUpdateH andler.java:163)

at org.jivesoftware.openfire.handler.PresenceUpdateHandler.process(PresenceUpdateH andler.java:137)

at org.jivesoftware.openfire.handler.PresenceUpdateHandler.process(PresenceUpdateH andler.java:201)

at org.jivesoftware.openfire.PresenceRouter.handle(PresenceRouter.java:148)

at org.jivesoftware.openfire.PresenceRouter.route(PresenceRouter.java:84)

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

at org.jivesoftware.openfire.SessionManager$ClientSessionListener.onConnectionClos e(SessionManager.java:1242)

at org.jivesoftware.openfire.nio.NIOConnection.notifyCloseListeners(NIOConnection. java:240)

at org.jivesoftware.openfire.nio.NIOConnection.close(NIOConnection.java:222)

at org.jivesoftware.openfire.nio.NIOConnection.systemShutdown(NIOConnection.java:2 30)

at org.jivesoftware.openfire.spi.LocalRoutingTable.stop(LocalRoutingTable.java:146 )

at org.jivesoftware.openfire.spi.RoutingTableImpl.stop(RoutingTableImpl.java:953)
at org.jivesoftware.openfire.XMPPServer.shutdownServer(XMPPServer.java:995)
at org.jivesoftware.openfire.XMPPServer.access$800(XMPPServer.java:148)
at org.jivesoftware.openfire.XMPPServer$ShutdownHookThread.run(XMPPServer.java:941 )

I have had a similar experience with openfire_3.10.0_all.deb and openjdk-7-jre. Switching to Oracle jdk1.8.0_45 to see if the problem persists.

Hi,

I have exactly the same problem with the new openfire_3.10.0_all.deb and java 7u80+7u60arm-0~webupd8~0.

Debian 6.0.9 i686.

@dru - can you say something about your problem after change jdk to 1.8.0_45 ? and what OS you have…

Albert, still plagued by the same issue after moving to Oracle jdk1.8.0_45. Debian 7.4 i686. We ended up downgrading to 3.9.3 to eliminate the problem. Anxiously awaiting a fix to 3.10.

@dru - thx for reply. I do the same action - downgrade to 3.9.3 :slight_smile: and waiting for the nex good version 3.10.x

[OF-903] ISE attempting to write data to a closed/closing session - Jive Software Open Source appears to be the issue you are hitting

We have been using 3.10.2 for a while and as of about two weeks now, we hit on the same error!

We have to restart openfire every 4 hours

We tried to review OF-903 as indicated but JIRA does not display it (it mentions that issue does not exist if you hit the link above).

Has anyone solved this issue? Due to constraints on other application running on the server (Centos 7), we are running the latest JRE 7 version (1.7.80).
openfire_localsession_internal_error.txt.zip (7036 Bytes)