Re: How efficient is select currval?

From: Richard Huxton <dev(at)archonet(dot)com>
To: Chris Velevitch <chris(dot)velevitch(at)gmail(dot)com>
Cc: pgsql-general(at)postgresql(dot)org
Subject: Re: How efficient is select currval?
Date: 2005-12-09 07:53:59
Message-ID: 43993817.40301@archonet.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

Chris Velevitch wrote:
> If I insert a record into a table with a serial primary key, does
> select currval fetch it from the database or does it get it from
> within memory?
>
> If it fetches it from the database, should I use a Serializable
> transaction or just a read committed transaction?

You can control the level of caching, but you'll have to be pushing it
for the serial to be a large part of your overheads. Each sequence is a
small table - you can do "SELECT * FROM my_seq" and see the "insides".

You don't need to worry about transaction isolation for sequences, you
are always guaranteed a new value. The price you pay for this is that
there might be gaps in the series of values you get.

--
Richard Huxton
Archonet Ltd

In response to

Browse pgsql-general by date

  From Date Subject
Next Message Rafael Martinez Guerrero 2005-12-09 09:00:45 Re: after vacuum, db is still "growing" :(
Previous Message gabor 2005-12-09 07:45:37 after vacuum, db is still "growing" :(