[Bug 23630] New: Per-connection resource randomization increases the window in which you lose messages

bugzilla-daemon at freedesktop.org bugzilla-daemon at freedesktop.org
Tue Sep 1 20:23:57 CEST 2009


http://bugs.freedesktop.org/show_bug.cgi?id=23630

           Summary: Per-connection resource randomization increases the
                    window in which you lose messages
           Product: Telepathy
           Version: unspecified
          Platform: Other
        OS/Version: All
            Status: NEW
          Severity: normal
          Priority: medium
         Component: telepathy-gabble
        AssignedTo: telepathy-bugs at lists.freedesktop.org
        ReportedBy: will.thompson at collabora.co.uk


XMPP messages don't have explicit acknowledgment of message receipt. If you're
sending me messages, and I fall offline without telling my server in advance,
the messages are lost until the server realizes I'm offline.

Gabble (and other clients) prefer to send messages to the most recent resource
that sent us a message.

Suppose I'm talking to you, with resource wjt at example.com/Foo. When my
connection unexpectedly breaks, messages are unavoidably lost. But when I sign
back in, if I re-use the resource 'Foo', this will (with most servers) replace
the previous connection on the server, and subsequent messages will reach me.
On the other hand, if Gabble randomizes the resource on connection (as it
currently does if you don't explicitly specify one) and I sign in as
wjt at example.com/Bar, I'll lose all the messages from you until my server
notices that /Foo is dead (which might be tens of minutes), or your client
decides to send messages to /Bar instead (because I send you a message, for
instance).

So, we should not randomize the resource on every connection, because it
exacerbates the problem. Instead, we should generate a resource based on DBus's
local machine ID. This would mean that users can still connect from two
Telepathy-powered devices without having to know about changing their resource,
but means that if your internet connection flakes out (maybe you've got into a
taxi, and your laptop loses the wireless and goes over to 3G) then you'll
reclaim your old resource.


-- 
Configure bugmail: http://bugs.freedesktop.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.



More information about the telepathy-bugs mailing list