What is meta? ×
Meta Stack Exchange is where users like you discuss bugs, features, and support issues that affect the software powering all 134 Stack Exchange communities.

Here on my beach in Romania with my decaying HP netbook I often have a lousy connection yet I still like to spend time in Stack Exchange chatrooms.

But when my connection gets sketchy I often get the retry/cancel message in chat when something I said failed to go through. So I trust it and click it. Sometimes I start to get a series of posts that didn't go through all prompting. Sometimes I have to retry many times before they go through.

But then when the connection gets a bit more reliable I see that more than one of my comments went through:

duplicate messages in chatroom link to stuttering chat ...

This makes me think some of the code which decides whether to show the retry/cancel prompt is in fact detached from the code which detects whether in fact a post from a user was successfully sent to the server.

I'm sure there can be some tricky race conditions and timeouts firing just before an Ajax call responds etc. But hey a bug is a bug. Can't you also check for duplicate messages if not all the time then at least after issuing the retry/cancel prompt?

share|improve this question
    
Ah, I thought you were just spamming. Sorry. :D –  Alenanno Aug 30 '12 at 17:08

2 Answers 2

This makes me think some of the code which decides whether to show the retry/cancel prompt is in fact detached from the code which detects whether in fact a post from a user was successfully sent to the server.

This is just wrong. But this being HTTP, the question "Has the server received the message?" can only be answered by "Have we received the server's confirmation?", and obviously this has to happen in a reasonable time. We could increase this timeout, which may benefit your awful connection, but would make things worse for everyone else, because it means they would only be notified after (say) a whole minute if the message they sent got lost.

Can't you also check for duplicate messages if not all the time then at least after issuing the retry/cancel prompt?

We do check for duplicate messages posted to the same room within 20 seconds. I guess that's a number we can increase a bit; there's really no reason to deliberately post the same message twice in succession into the same room within, say, one minute.

But seriously, at some point you'll have to consider that maybe with such a bad connection, a realtime chat application may not be the best thing to be running.

share|improve this answer
1  
Are you telling me I'm holding it wrong? (-; –  hippietrail Aug 30 '12 at 17:43
    
if iD Software got QuakeWorld running as smooth as they did on crappy 14.4 modem connections, no reason "realtime" chat should not work... IIR IRC worked on less –  mxmissile Aug 30 '12 at 17:44
3  
@mxmissile There's a difference between a slow connection and a bad connection. –  balpha Aug 30 '12 at 17:45
    
@hippietrail Worth a try holding it differently :) –  balpha Aug 30 '12 at 17:45

I just stumbled on to this bug myself, talking with the very same @hippietrail no less.

enter image description here

You can see me explaining I saw the bug, then it happened again.

The only thing I have to add to the previous comments is that all the other real time chats work just fine. I am aware that maybe the connection from me to the SE-chat server is that little bit worse than the other apps servers, and therefore they work. But on the other hand I have noticed that skype just retries on its own and so far google talk has never produced any repeated messages no matter how screwed up my connection.

I am a frequent user of mobile devices in countries like Malaysia and Thailand where even a landline is questionable when it comes to reliability. But facebook chat, irc, skype and so on works for everyone

Awesome chat(s) btw even with some minor minor stuff like this ^^

share|improve this answer

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .