| From: | "Scott Marlowe" <scott(dot)marlowe(at)gmail(dot)com> | 
|---|---|
| To: | "James B(dot) Byrne" <byrnejb(at)harte-lyne(dot)ca> | 
| Cc: | pgsql-general(at)postgresql(dot)org | 
| Subject: | Re: Help with pre-loaded arbitrary key sequences | 
| Date: | 2008-01-17 16:48:21 | 
| Message-ID: | dcc563d10801170848p4b2ddb6bid8e848df70be7761@mail.gmail.com | 
| Views: | Whole Thread | Raw Message | Download mbox | Resend email | 
| Thread: | |
| Lists: | pgsql-general | 
On Jan 17, 2008 9:19 AM, James B. Byrne <byrnejb(at)harte-lyne(dot)ca> wrote:
>
> On Thu, January 17, 2008 10:15, Scott Marlowe wrote:
> >
> > If race conditions are a possible issue, you use a sequence and
> > increment that until you get a number that isn't used.  That way two
> > clients connecting at the same time can get different, available
> > numbers.
> >
>
> That is close to the idea that I originally had.  I was simply wondering
> if the built-in sequencer could handle this case or whether I need to roll
> my own.
Got bored, hacked this aggregious pl/pgsql routine up.  It looks
horrible, but I wanted it to be able to use indexes.  Seems to work.
Test has ~750k rows and returns in it and returns a new id in  < 1ms
on my little server.
File attached.
| Attachment | Content-Type | Size | 
|---|---|---|
| getnext.sql | text/x-sql | 505 bytes | 
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Scott Marlowe | 2008-01-17 16:58:22 | Re: losing db user password going from 7.4 to 8.2 | 
| Previous Message | Steve Clark | 2008-01-17 16:35:49 | losing db user password going from 7.4 to 8.2 |