Connection ID not set for this session
I got this error in tigase-console.log.
2015-01-13 22:20:47.731 [kontalk:jabber:iq:register Queue Worker 0] SessionManager$ProcessorWorkerThread.process() WARNING: Exception during packet processing: from=c2s@localhost/220.127.116.11_5999_18.104.22.168_58241, to=sess-man@localhost, DATA=<iq type="error" id="x0XG4-35" from="firstname.lastname@example.org/8c1ac3ff9c13e9cb" to="beta.kontalk.net" xmlns="jabber:client"><query xmlns="jabber:iq:register"><x xmlns="jabber:x:data" type="form"><field type="hidden" var="FORM_TYPE"><value>CData size: 41</value></field><field type="text-single" label="Signed public key" var="publickey"><value>CData size: 1980</value></field></x></query><error code="404" type="wait"><recipient-unavailable xmlns="urn:ietf:params:xml:ns:xmpp-stanzas"/></error></iq>, SIZE=2523, XMLNS=jabber:client, PRIORITY=NORMAL, PERMISSION=NONE, TYPE=error tigase.xmpp.NoConnectionIdException: Connection ID not set for this session. This is probably the SM session to handle traffic addressed to the server itself. Or maybe it's a bug. at tigase.xmpp.XMPPResourceConnection.getConnectionId(XMPPResourceConnection.java:612) at org.kontalk.xmppserver.KontalkIqRegister.process(KontalkIqRegister.java:190) at tigase.server.xmppsession.SessionManager$ProcessorWorkerThread.process(SessionManager.java:2885) at tigase.util.WorkerThread.run(WorkerThread.java:132)
Does this simply mean that the connection was abruply closed in the meantime or might it be another kind of problem?
Added by Artur Hefczyc about 4 years ago
Yes, this may mean that the connection was broken.
Adnrzej, could you please confirm. I remember that the code from the time before XEP-198 (Stream management) implementation, simply dropped such packets. I guess with the XEP-198 the connection manager may return an error.
Added by Andrzej Wójcik about 4 years ago
This is addition to XEP-0198 Stream Management but not strictly related as now if ConnectionManager receives packet for connection which is already closed then it returns it back to SessionManager for processing (ie. to store to offline storage in case of message stanzas) and in some cases (as here broken connection not authorized connection) Connection ID may not be set.