byte[] contents

Hi

Just to check the behavior of the messages in SGS. I asked this with the old stack and just want to confirm the bahaviour. If a message sent from either the client or the server goes missing, or in the case of large messages, its go missing on the underlying transport, do we get partial messages in our byte[]s or is it all or nothing?. I’m hoping it’s all or nothing, if I’m using UDP I don’t care if a whole message goes missing, if I get just bits of it, my message processer needs to cope. With TCP it shouldn’t happen, either it works or the stream gets cut and I get an exception before any broken message … I hope :slight_smile:

Cheers

Endolf

Okay, answer from my networking guru…

You wont like it.

UDP has an optional payload CRC. It has to be enabled on the system level and most systems default to disabled. If it is disabled, you can get partial packets. You can even get corrupted packets of the right length.

Sorry

If I start using UDP, it’s something to keep an eye on, maybe have to add a length and CRC check if I know it’s an unreliable channel, or implement my own transport plugin with the option.

Thanks for letting us know at least, we can now deal with it :slight_smile:

Endolf