SI
SI
discoversearch

We've detected that you're using an ad content blocking browser plug-in or feature. Ads provide a critical source of revenue to the continued operation of Silicon Investor.  We ask that you disable ad blocking while on Silicon Investor in the best interests of our community.  If you are not using an ad blocker but are still receiving this message, make sure your browser's tracking protection is set to the 'standard' level.
SI - Site Forums : Silicon Investor - Welcome New SI Members! -- Ignore unavailable to you. Want to Upgrade?


To: SI Dave who wrote (21693)12/1/2004 10:08:18 AM
From: SI Bob  Respond to of 32918
 
I remain convinced that part of the solution is to make messageid an identity field, saving a couple of steps in the message-posting routine, which will speed it up, and also make it impossible to get a PK-violation.

I strongly suspect that what's happening is that if two people hit the message-posting routine within the 16ms it normally takes to run, one of them will get a PK violation and their message won't post. I haven't thought it through to determine whether I think it'll cause a missing intra-thread number, but do know the way it's currently being done does make PK violations a possible problem and making messageid an identity field will get rid of that problem.

The likelihood of two people running that routine within the same 16ms window is pretty slim. Nearly impossible or at least extremely rare. Problem is, it doesn't always take just 16 ms. And if the lights go out on the webserver's connection for any length of time (several seconds), then it's very likely two people will hit the routine at the same time when the lights come back on.

If I remember correctly, it takes around an hour to change that field to an identity field, and not much else can be happening at the same time. I'll also have to edit the posting routines to quit setting messageid on their own.

So it's definitely a late-night, bring down the site for an hour or so thing.