Project

General

Profile

Do we need to run session resumption timer if user didn't close a session properly and re-created it (XEP-0198)

Igor Khomenko
Added over 4 years ago

I found one case in Tigase 5.2:

  • User did login to Tigase and enabled stream management

  • User lost Internet connection for a while and closed internally stream.

  • Internet connection came back and User did login to Tigase again and enabled stream management

According to the Tigase logs - Tigase runs a session resumption timeout task for previous user connection.

But this user already has a new connection.

Wouldn't be better to move data from previous session to the active one (like session resumption) and don't run a session resumption timeout task?


Replies (4)

Avatar?id=6023&size=32x32

Added by Artur Hefczyc TigaseTeam over 4 years ago

Please note, a user can have multiple devices connected at the same time, all of them can disconnect, reconnect, use session resumption or perform full login. Therefore the fact that there was a full login performed does mean, stream resumption data from other session are no longer needed.

Added by Igor Khomenko over 4 years ago

stream resumption data from other session are no longer needed.

yes, but I use the same user with the same resource, and Tigase runs session resumption timeout timer

I think it's not necessary here

Avatar?id=6023&size=32x32

Added by Artur Hefczyc TigaseTeam over 4 years ago

I understand your point, but even the same user and the same resource is not enough to determine device at 100% accuracy. That said, on the other hand, I agree, there is for sure room for improvements. We work on the code all the time and improve and optimize things, so if we find a way to improve this part, we will do it.

Added by Igor Khomenko over 4 years ago

ok, thanks Artur, great to hear this!

    (1-4/4)