Re: BUG #2073: Can't drop sequence when created via SERIAL column

Lists: pgsql-bugs
From: "Aaron Dummer" <aaron(at)dummer(dot)info>
To: pgsql-bugs(at)postgresql(dot)org
Subject: BUG #2073: Can't drop sequence when created via SERIAL column
Date: 2005-11-28 21:10:33
Message-ID: 20051128211033.EECFCF0ACA@svr2.postgresql.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-bugs


The following bug has been logged online:

Bug reference: 2073
Logged by: Aaron Dummer
Email address: aaron(at)dummer(dot)info
PostgreSQL version: 8.0.3
Operating system: Debian Linux
Description: Can't drop sequence when created via SERIAL column
Details:

If I create a table named foo with a column named bar, column type SERIAL,
it auto-generates a sequence named foo_bar_seq. Now if I manually create a
new sequence called custom_seq, and change the default value of foo.bar to
reference the new sequence, I still can't delete the old sequence
(foo_bar_seq).

In other words, from a user's point of view, the foo table is no longer
dependent on the foo_bar_seq, yet the system still sees it as dependent.

I brought this topic up on the #postgresql IRC channel and the behavior was
confirmed by AndrewSN, scampbell_, and mastermind.


From: Bruce Momjian <pgman(at)candle(dot)pha(dot)pa(dot)us>
To: Aaron Dummer <aaron(at)dummer(dot)info>
Cc: pgsql-bugs(at)postgresql(dot)org
Subject: Re: BUG #2073: Can't drop sequence when created via SERIAL column
Date: 2005-11-29 16:04:21
Message-ID: 200511291604.jATG4Lt06378@candle.pha.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-bugs

Aaron Dummer wrote:
>
> The following bug has been logged online:
>
> Bug reference: 2073
> Logged by: Aaron Dummer
> Email address: aaron(at)dummer(dot)info
> PostgreSQL version: 8.0.3
> Operating system: Debian Linux
> Description: Can't drop sequence when created via SERIAL column
> Details:
>
> If I create a table named foo with a column named bar, column type SERIAL,
> it auto-generates a sequence named foo_bar_seq. Now if I manually create a
> new sequence called custom_seq, and change the default value of foo.bar to
> reference the new sequence, I still can't delete the old sequence
> (foo_bar_seq).
>
> In other words, from a user's point of view, the foo table is no longer
> dependent on the foo_bar_seq, yet the system still sees it as dependent.
>
> I brought this topic up on the #postgresql IRC channel and the behavior was
> confirmed by AndrewSN, scampbell_, and mastermind.

Right. We have this TODO item:

* %Disallow changing default expression of a SERIAL column?

which would prevent you from changing the default expression for a
SERIAL column. So the answer is, don't do that, and in the future, we
might prevent it.

--
Bruce Momjian | http://candle.pha.pa.us
pgman(at)candle(dot)pha(dot)pa(dot)us | (610) 359-1001
+ If your life is a hard drive, | 13 Roberts Road
+ Christ can be your backup. | Newtown Square, Pennsylvania 19073