Page 1 of 1

Message Order

Posted: Tue Jan 06, 2015 7:26 pm
by sgermain
Hey, I'm trying to use UnrealIRCd as a data broadcasting system and I'm wondering if there's a way to enforce messages coming in in a specific order.

The problem I'm currently running into right now is that, sometimes (not often), I send a multi-part message to a channel and the end boundary will come in before the last chunk. Short of delaying the send of the end boundary, is there a way to send a timestamp along with the messages to ensure that the chunks are being read in the correct order?

Thanks,
Simon

Re: Message Order

Posted: Wed Jan 07, 2015 2:38 am
by katsklaw
can you elaborate with an example from IRC?

Re: Message Order

Posted: Wed Jan 07, 2015 8:54 pm
by Syzop
If, from a single client (eg: SourceNick), you send PRIVMSG #chan :a, PRIVMSG #chan :b, and PRIVMSG #chan :c, then in UnrealIRCd it's guaranteed to be delivered in that order (a, b, c). It will never deliver in any other order (eg: a, c, b). So if you are not seeing that, it's not UnrealIRCd causing the out-of-sequence and you should investigate the client.
If you don't believe me, do a packet capture :D

The only thing that could happen is a message to be blocked due to some filter or ban etc., not being delivered between servers because they are not linked, or a message being delayed a little, but even in all those cases there will never be any reordering.