Re: creating a table with a serial column sets currval - Mailing list pgsql-bugs

From Kris Jurka
Subject Re: creating a table with a serial column sets currval
Date
Msg-id Pine.BSO.4.64.0710181622170.12647@leary.csoft.net
Whole thread Raw
In response to creating a table with a serial column sets currval  (Kris Jurka <books@ejurka.com>)
Responses Re: creating a table with a serial column sets currval
List pgsql-bugs
On Thu, 18 Oct 2007, Kris Jurka wrote:

>
> jurka=# create table t (c serial);
> NOTICE:  CREATE TABLE will create implicit sequence "t_c_seq" for serial
> column "t.c"
> CREATE TABLE
> jurka=# select currval('t_c_seq');
> currval
> ---------
>       1
> (1 row)
>
> I would expect it to say that currval wasn't set like so:
>

Looks like any alter sequence command will do this.  The serial case uses
alter sequence owned by under the hood which exposes this.  The problem is
that altering the sequence puts it into the SeqTable cache list when it
really shouldn't be.

Kris Jurka

pgsql-bugs by date:

Previous
From: Kris Jurka
Date:
Subject: creating a table with a serial column sets currval
Next
From: Tom Lane
Date:
Subject: Re: creating a table with a serial column sets currval