Wildfire 3.2.4 - "Zombie" sessions prevent users from logging back on

I have recently upgraded to Wildfire 3.2.4, and have observed an issue where users are unable to log on, being told that their username or password is incorrect. Restarting the server processes fixes the issue temporarily, but as soon as their sessions time out, the problem reappears.

Additionally, when attempting to kill a session manually through the admin console, it simply hangs in a “loading” state. The client is logged out, but cannot log in again, as above.

I have noticed two things in the logs: one that appears to be related to this, and one that might not be, but I cannot be sure. The first appears in the error log whenever I try to manually kill a session, and may also appear when a session times out–I have not been able to test that.


2007.04.02 10:09:49 [org.jivesoftware.wildfire.interceptor.InterceptorManager.invokeInterceptors(In terceptorManager.java:239)

] Error in interceptor: org.jivesoftware.wildfire.plugin.SubscriptionPlugin$SuscriptionPacketIntercepto r@11fb68f

java.lang.AbstractMethodError

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

at org.jivesoftware.wildfire.session.Session.process(Session.java:280)

at org.jivesoftware.wildfire.roster.Roster.broadcastPresence(Roster.java:590)

at org.jivesoftware.wildfire.handler.PresenceUpdateHandler.broadcastUpdate(Presenc eUpdateHandler.java:256)

at org.jivesoftware.wildfire.handler.PresenceUpdateHandler.process(PresenceUpdateH andler.java:113)

at org.jivesoftware.wildfire.SessionManager$ClientSessionListener.onConnectionClos e(SessionManager.java:1493)

at org.jivesoftware.wildfire.nio.NIOConnection.notifyCloseListeners(NIOConnection. java:161)

at org.jivesoftware.wildfire.nio.NIOConnection.close(NIOConnection.java:140)

at org.jivesoftware.wildfire.admin.session_002dsummary_jsp._jspService(session_002 dsummary_jsp.java:125)

at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97)

at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)

at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:491)

at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.ja va:1074)

at com.opensymphony.module.sitemesh.filter.PageFilter.parsePage(PageFilter.java:11 8)

at com.opensymphony.module.sitemesh.filter.PageFilter.doFilter(PageFilter.java:52)

at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.ja va:1065)

at org.jivesoftware.util.LocaleFilter.doFilter(LocaleFilter.java:65)

at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.ja va:1065)

at org.jivesoftware.util.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingF ilter.java:41)

at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.ja va:1065)

at org.jivesoftware.admin.PluginFilter.doFilter(PluginFilter.java:69)

at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.ja va:1065)

at org.jivesoftware.admin.AuthCheckFilter.doFilter(AuthCheckFilter.java:98)

at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.ja va:1065)

at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:365)

at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:185)

at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:181)

at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:689)

at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:391)

at org.mortbay.jetty.handler.ContextHandlerCollection.handle(ContextHandlerCollect ion.java:146)

at org.mortbay.jetty.handler.HandlerCollection.handle(HandlerCollection.java:114)

at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:139)

at org.mortbay.jetty.Server.handle(Server.java:285)

at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:457)

at org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.j ava:751)

at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:500)

at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:209)

at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:357)

at org.mortbay.jetty.bio.SocketConnector$Connection.run(SocketConnector.java:217)

at org.mortbay.thread.BoundedThreadPool$PoolThread.run(BoundedThreadPool.java:475)


The second seems to appear about every minute and a half in the debug log:


2007.04.02 10:12:09 EXCEPTION

java.net.SocketTimeoutException: Read timed out

at java.net.SocketInputStream.socketRead0(Native Method)

at java.net.SocketInputStream.read(Unknown Source)

at com.sun.net.ssl.internal.ssl.InputRecord.readFully(Unknown Source)

at com.sun.net.ssl.internal.ssl.InputRecord.read(Unknown Source)

at com.sun.net.ssl.internal.ssl.SSLSocketImpl.readRecord(Unknown Source)

at com.sun.net.ssl.internal.ssl.SSLSocketImpl.readDataRecord(Unknown Source)

at com.sun.net.ssl.internal.ssl.AppInputStream.read(Unknown Source)

at org.mortbay.io.ByteArrayBuffer.readFrom(ByteArrayBuffer.java:168)

at org.mortbay.io.bio.StreamEndPoint.fill(StreamEndPoint.java:99)

at org.mortbay.jetty.bio.SocketConnector$Connection.fill(SocketConnector.java:190)

at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:277)

at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:203)

at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:357)

at org.mortbay.jetty.bio.SocketConnector$Connection.run(SocketConnector.java:217)

at org.mortbay.thread.BoundedThreadPool$PoolThread.run(BoundedThreadPool.java:475)

2007.04.02 10:12:09 EOF


Wildfire is running on a Windows 2003 Server, connecting to an Active Directory user DB, with a MySQL primary DB.

I’'m happy to provide any other information needed…any assistance will be greatly appreciated.

Thanks.

Timothy Collett

Edit: A couple of other things I just remembered: the Active Client Sessions count in the admin console seems to be significantly inflated, and next to the server name on the server settings page, there’‘s a little warning exclamation mark, with no indication of what it means…not sure if these are relevant, but thought I’'d mention them…

next to the server name on the server settings page, there’'s a little warning exclamation mark, with no indication of what it means

It means something like that the name of your ssl certificate does not match your xmpp.domain, go to the Server Certificates (/ssl-certificates.jsp) page and press there the generate/restart buttons.

LG

i have seen such behaviour (cant find the thread i have posted about it) with some older 3.1.x maybe version. Now with 3.2.3 it’‘s ok. I’'m waiting for Openfire final to upgrade.

Hey Timothy,

The first error is generated due to an old plugin. Make sure to update your plugins to the latest version. The second error is related to the admin console. In other words, I don’'t think any of those errors is preventing a user to authenticate. For some reason, the server is failing to authenticate new connections. Are you using LDAP as your back end? Is the server being able to connect to the LDAP server and authenticate users? Any other error in the log files?

Regards,

– Gato