From: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
---|---|
To: | Andrew Dunstan <andrew(at)dunslane(dot)net> |
Cc: | pgsql-hackers(at)postgresql(dot)org, Jonathan Gardner <jgardner(at)jonathangardner(dot)net> |
Subject: | Re: ALTER TABLE ... TO ... to change related names |
Date: | 2003-08-30 16:38:06 |
Message-ID: | 3889.1062261486@sss.pgh.pa.us |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
Andrew Dunstan <andrew(at)dunslane(dot)net> writes:
> There is no guarantee that a given sequence is used only for one column
> in one table, as I understand it. So renaming it could screw you up badly.
Yeah, I would recommend having a discussion about the details of the
proposed behavior before you start coding, not after.
It'd probably be reasonable to rename only those sequences that are
connected to the target table/column by internal dependencies --- this
indicates that they were created by a SERIAL column definition and not
by manual operations. IIRC, pg_dump already uses this same cue to
decide whether to dump the sequence definition separately or say SERIAL.
It'd still be possible for someone's schema to break, if they made a
sequence via SERIAL and then referred to it by name in defaults for
other columns. But I think we could say they were being unreasonably
intimate with implementation details in that case.
Similar rules need to be agreed to about when to rename indexes.
regards, tom lane
From | Date | Subject | |
---|---|---|---|
Next Message | Dennis Björklund | 2003-08-30 16:52:41 | Re: ALTER TABLE ... TO ... to change related names |
Previous Message | Bruce Momjian | 2003-08-30 16:33:42 | Re: FE/BE Protocol - Specific version |