We're updating the issue view to help you get more done. 

Remove the session that was used for resumption immediately

Description

Stream Management is a feature that allows a session to be 'resumed'. The implementation basically keeps a reference to a session alive for a certain period of time when its connection got disconnected in a non-clean way (eg: network interruption). When a new session for the same user is established, that session can indicate that it wants to be 'resume' the old session. What happens is that the new session "donates" its connection to the old session, which is then is resumed.

The session that donates its connection is no longer relevant. The existing code marks it as 'detached', which, eventually, causes it to be cleaned up. This, however, is confusing (and potientially wrong): the session lingers in a state of being 'detached', which implies that it can be resumed. That simply is not the case. The session is cleanup up only after the detach timeout has occurred.

Openfire should clean up the donor immediately after session resumption.

Environment

None

Acceptance Test - Entry

None
Fixed

Assignee

Guus der Kinderen

Reporter

Guus der Kinderen

Labels

None

Expected Effort

None

Ignite Forum URL

None

Fix versions

Priority

Major
Configure