The "duplicate posts" problem

I’ve noticed there seem to be a lot more duplicate posts with the new Board, and I have an idea on how to fix this.

How about using JavaScript to disable the “Submit” button as soon as a user clicks it to submit a new thread, or a reply to a thread? That way, even if the user gets impatient and clicks the “Submit” button again, nothing will happen - no duplicate post.

I don’t know if this has already been considered or if it’s even feasible (back to that whole “if we modify the source we lose support” tihng) but I thought I’d toss it out there.

Isn’t that kind of like the already existing 60 second time-out? Only it doesn’t seem to work for double posts - I don’t know why. I get the feeling, though, that thats what that time limit is SUPPOSED to help for.

I agree with mnemosyne - if the sixty-second timeout isn’t preventing the double-post, why would disabling the submit button prevent it?

Why isn’t the 60 second timeot catching these?

I’ve only double posted twice, and I didn’t hit the submit button twice on either of them. Sometimes the forum seems to just really like a particular post.

I’m wondering whether the Preview is sometimes sending posts.

Of my posts, probably less than 1% of them have ever been submitted without Preview. Lately, though, I’ve had (and have noticed others having) a run of double posts. I’m from the old school, mindful of Gaudere’s long-standing admonition to “trust the CGI”. I never click Submit more than once. If there is a timeout or inordinately long wait, I close the browser, reopen, reenter the forum, and start over.

But just yestereday, in General Questions, I got a double post. NB: The first one was about the time I previewed. The second one was several minutes later and was when I actually clicked Submit.

Me too! I’ve only ever double-posted by doing something silly like reloading the “Thanks for Submitting!” page when it timed out. But the other day I managed to double-post with no timeouts, no reloads, and no re-clicks. Come to think of it, I too preview liberally, but I usually scroll down every time I preview to make sure someone hasn’t beaten me to the punch—I think I would have noticed if I had beaten myself.

You’re right, Achernar. I’m used to previewing multiple times and checking for new posts that might need responses. My post was not there on preview. But on submission, both were there. I hadn’t changed anything. There were identical, but one was at 12:16 PM and the other at 12:21 PM (EDT).

Here they are.

Wasn’t there a problem with the preview button creating posts over at fff

Yeah, but the Button of Doom was a UBB feature, not a vBulletin one.

For the record: I just double-posted (please, surppress your amazement). The only action I took was sort of a stutter double click on the submit button.

Could it be that if the button is hit twice within a very short interval it beats the system?

This would sorta make sense based on what I’ve seen. When the board is crawling, I’ll usually have several thread windows open. I’ll craft a well thought out reply to one, hit the button and move on. Sometimes I’ll end up with two-to-three replies waiting to be submitted. Now, when the server logjam clears, you would expect one reply to go and the others to give me the 60-second message. But most of the time, they all go simultaneously.

I’ve had a couple of double-posts where I am SURE I didn’t click “Submit” more than once. What I usually do is open another browser window, and bring up the forum I’ve just posted to, to see when my post goes through. I never had this problem on the old board.

The advantage of disabling the “Submit” button in JavaScript (as opposed to the timeout) is that the disabling would happen on the client side; once the user has submitted a post, the button gets immediately disabled and future clicks on it don’t even make it to the server.

I just did a double click submit (two clicks about a quarter of a second apart) to test your theory, Duck. There was no double post. At any rate, I know that I didn’t double click when the double post that I reported happened. Besides, they were several minutes apart.

I, for one, know how to handle the time-out problem, at least in IE.

If you look at the status bar you’ll see a series of messages. If it never said “Web site found, waiting for reply” then nothing got through to the SDMB, even if it says “Searching for [ip address or boards.straightdope.com]” then “done” it still didn’t actually talk to the server.

As for the mysterious other problem you guys are referring to… no clue. Hasn’t happened to me.

So that is to say, if you do see the “Web site found, waiting for reply” then the post did make it through.

At least, that you made a post made it through… I did have one of the ghost OPs once where a thread was started without an actual OP. Since then I’ve always kept a text editor open for long posts and pasted the response there in case something happened like that.

DarrenS, if your double posts happen when you’ve only clicked the Submit button once, then disabling the Submit button wouldn’t fix the problem, would it?

Arnold

Your point is irrefutable. And that brings me back to my original report. I believe that my post posted when I clicked Preview (it didn’t show up as a post when I saw the preview) and then posted again when I clicked Submit.

Good point of logic Arnold.

If it happens when someone clicks “preview”, it must be intermittent, because I always preview, yet don’t always get the double post. This must be happening on the server side - the browser will only submit it once (I’m assuming a post is achieved by POSTing an HTML form, not through some clever client-side Java applet or ActiveX control).

I think I should report that it has not happened to me since that day, a day when there seemed to be an inordinate number of double posts in many threads. Maybe it was a temporary anomaly. But if something similar should happen in the future, perhaps this thread will serve to assist in some way with analysis of the problem.

When I hit SUBMIT, I believe it sends a request to post the message & then sends me a
confirmation & thank you.

I noticed that it almost always sends the request to post the info I gave, but gets stuck
trying to send me the confirmation message. In other words, it HAS posted the info
that I asked but needs a long time to do the confirmation page. (At this point some people
might
be tempted to hit SUBMIT again)

So, if it hangs around after I use SUBMIT, then I copy the page URL & paste it into another
browser window then check to see if my message was posted yet. So far, everytime it
has posted, but the confirmation page is never sent so I just cancel & close the window since its
alreay posted the info I asked it to.

My conclusion so far is - when it happens, it’s either a rare bug in vBulletin, or caused by the database losing track of its transactions. Without access to the source code it’s very difficult to tell. Even if I knew for sure that the problem was in the source code, we don’t modify the source code. We could perhaps do something in a vBulletin template, but without knowing for sure that this something would fix the problem I figure, why bother? We can introduce other problems by including more javascript in the page.

Yeah, but I want new problems—I’m sick of the same old ones! I think the best solution would be to appoint some poor dope Moderator, with the sole assignment of deleting duplicate posts. If enough of us got in the habit of reporting double (or triple or whatever) posts to this Moderator, it would be an easy job, and it would make the board look so much nicer!