On 06/10/2012 06:14 AM, Tom Lane wrote:
phb.e...@free.fr writes:
When a table having a seial column has been created by a CREATE EXTENSION,
and when this table is later dropped from the extension, the associated
sequence must be also explicitely dropped from the extension.
This doesn't really seem like a bug to me.  The sequence is a somewhat
independent object.
I disagree; it is inconsistent with the expectation established in normal operations that the sequence created to serve a SERIAL column is owned by that table/column and is dropped when it is.

regress=# create table test (x serial primary key);
NOTICE: CREATE TABLE will create implicit sequence "test_x_seq" for serial column "test.x" NOTICE: CREATE TABLE / PRIMARY KEY will create implicit index "test_pkey" for table "test"
CREATE TABLE
regress=# \d
           List of relations
 Schema |    Name    |   Type   | Owner
--------+------------+----------+-------
 public | test       | table    | craig
 public | test_x_seq | sequence | craig
(2 rows)

regress=# drop table test;
DROP TABLE
regress=# \d
No relations found.




regress=# create table test (x serial primary key);
NOTICE: CREATE TABLE will create implicit sequence "test_x_seq" for serial column "test.x" NOTICE: CREATE TABLE / PRIMARY KEY will create implicit index "test_pkey" for table "test"
CREATE TABLE
regress=# alter table test drop column x;
ALTER TABLE
regress=# \d
       List of relations
 Schema | Name | Type  | Owner
--------+------+-------+-------
 public | test | table | craig
(1 row)





--
Craig Ringer

--
Sent via pgsql-bugs mailing list (pgsql-bugs@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-bugs

Reply via email to