Re: BUG #6683: dropping a table with a serial column from an extension needs to explicitely drop the associated seq
От
Craig Ringer
Тема
Re: BUG #6683: dropping a table with a serial column from
an extension needs to explicitely drop the associated seq
Дата
Msg-id
4FD41860.5030200@ringerc.id.au
Ответ на
Список
Дерево обсуждения
Re: BUG #6683: dropping a table with a serial column from an extension needs to explicitely drop the associated seq Tom Lane <tgl@sss.pgh.pa.us>
Re: BUG #6683: dropping a table with a serial column from
an extension needs to explicitely drop the associated seq Craig Ringer <ringerc@ringerc.id.au>
Re: BUG #6683: dropping a table with a serial column from an extension needs to explicitely drop the associated seq Tom Lane <tgl@sss.pgh.pa.us>
Re: BUG #6683: dropping a table with a serial column from
an extension needs to explicitely drop the associated seq Philippe BEAUDOIN <phb.emaj@free.fr>
On 06/10/2012 06:14 AM, Tom Lane wrote:
> phb.emaj@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В списке pgsql-bugs по дате отправления
От: Tom Lane
Дата: