From: | Andrew Sullivan <ajs(at)crankycanuck(dot)ca> |
---|---|
To: | pgsql-general(at)postgresql(dot)org |
Subject: | Re: table as log (multiple writers and readers) |
Date: | 2008-04-17 04:51:00 |
Message-ID: | 20080417045100.GA1719@crankycanuck.ca |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-general |
On Thu, Apr 17, 2008 at 12:44:51PM +0800, Craig Ringer wrote:
> It won't work with multiple concurrent writers. There is no guarantee
> that an INSERT with a timestamp older than the one you just saw isn't
> waiting to commit.
This is pretty unlikely -- I won't say impossible, because I'm sure there's
some kernel-level race condition -- if you use the clock time approach and
SERIALIZABLE mode. You could add a trigger that checks for other timestamps
< yours, I suppose. Of course, that's pretty heavyweight, too. How much is
the absolute serialization worth to you in performance?
The only other thing I can suggest is what someone else did: commit them
with wallclock timestamps, and then have a different thread wake up every
_n_ seconds and put the records into the proper table in timestamp order.
A
From | Date | Subject | |
---|---|---|---|
Next Message | Andrew Sullivan | 2008-04-17 04:53:26 | Re: table as log (multiple writers and readers) |
Previous Message | Craig Ringer | 2008-04-17 04:44:51 | Re: table as log (multiple writers and readers) |