[sugar] Tubes message dropping

Guillaume Desmottes guillaume.desmottes at collabora.co.uk
Mon Jul 23 09:32:04 EDT 2007


Le samedi 21 juillet 2007 à 21:02 +0100, Simon McVittie a écrit :
> On Sat, 21 Jul 2007 at 13:50:27 +0200, J.M. Maurer wrote:
> > To the Tube guys:
> > 
> > Do you drop messages on your XMPP server? An AbiCollab packet that
> > contains an image never gets sent over, resulting in documents getting
> > out of sync (in fact, the PS seems to disconnect the buddy altogether
> > from the Write session).
> 
> Without reading the source for Gabble: It's possible that (a) we don't
> fragment large Tubes messages into multiple XMPP-level messages, and (b) the
> XMPP server we're using fails on large messages. I'd have to check the
> source and XEPs to be sure. If this is the case, a workaround would be to
> avoid sending very large single messages in user apps, and the correct fix
> would be to fragment the D-Bus message into multiple XMPP messages in Gabble.
> 
> Guillaume: you touched it last, I think. Are we likely to have this bug?
> 

Right, currently we don't fragment large messages and make the
assumption "one IBB message == one tube message".
So, it's probably the server who reject too big IBB stanzas.

We could modify our IBB implementation to fragment big stanzas but that
would make the code sensibly more complicated. Furthermore I'm not sure
the server will allow us to send N MAX_SIZE stanzas consecutively. IBB
is really not designed to send big datas (XEP suggests 4096 bytes as max
payload size).
A quick workaround could be to raise the allowed stanza max size in the
server config.

Oth, I can't see how to easily implement MUC D-Bus tubes without using
IBB, so maybe at some point we'll have to implement messages
fragmentations anyway.


	G.



More information about the Sugar mailing list