Upgraded from 3.8.1 to 3.9.1: Client invalid session 127.0.0.1

We have 3.8.x working perfectly but needed the Presence plugin. From the 3.8.x control panel it told us to upgrade to 3.9.1 which went flawlessly except for one thing: all our presences are now offline. Debian 7 64-bit.

Details:

Always shows ‘null’ even if the user is online.

Shows ‘Unavailable’ if they are offline (as expected).

  • Under the Client Sessions list, the user is listed but shows they are offline and their IP address is 127.0.0.1. There is no firewall on this test server, and we are just running nginx as an http-bind proxy so there should be no conflict there.

Status: authenticated

Presence: offline

  • Digging deeper in the Debug log it seems to be http-bind related or DNS lookup: we have this on a subdomain ‘xmppnode1.myxmppserver.com’ with a wildcard cert.

2014.02.07 09:30:39 org.jivesoftware.openfire.http.HttpBindServlet - Client provided invalid session: 19c8c058. [127.0.0.1]

2014.02.07 09:30:39 org.jivesoftware.openfire.session.LocalOutgoingServerSession - Error trying to connect to remote server: myxmppserver.com(DNS lookup:myxmppserver.com:5269)

java.net.ConnectException: Connection refused

at java.net.PlainSocketImpl.socketConnect(Native Method)

at java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:351)

at java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:213)

at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:200)

at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:366)

at java.net.Socket.connect(Socket.java:529)

at org.jivesoftware.openfire.session.LocalOutgoingServerSession.createOutgoingSess ion(LocalOutgoingServerSession.java:280)

at org.jivesoftware.openfire.session.LocalOutgoingServerSession.authenticateDomain (LocalOutgoingServerSession.java:208)

at org.jivesoftware.openfire.server.OutgoingSessionPromise$PacketsProcessor.sendPa cket(OutgoingSessionPromise.java:261)

at org.jivesoftware.openfire.server.OutgoingSessionPromise$PacketsProcessor.run(Ou tgoingSessionPromise.java:238)

at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java: 886)

at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)

at java.lang.Thread.run(Thread.java:662)

Why is ‘DNS lookup:myxmppserver.com)’ not looking for ‘xmppnode1.myxmppserver.com’ ? Is there a setting to override this?

This is commented out in our conf:

(our ip was here)

For now I guess we’ll roll back to 3.8.x and manually install the Presence plug-in from an archive.