Обсуждение: BUG #12752: Regression in ALTER TABLE RENAME COLUMN

Поиск
Список
Период
Сортировка

BUG #12752: Regression in ALTER TABLE RENAME COLUMN

От
gianni.ciolli@2ndquadrant.it
Дата:
The following bug has been logged on the website:

Bug reference:      12752
Logged by:          Gianni Ciolli
Email address:      gianni.ciolli@2ndquadrant.it
PostgreSQL version: 9.4.1
Operating system:   Debian GNU/Linux, testing
Description:

It appears that the bug discussed here has regressed since 9.1:

http://www.postgresql.org/message-id/200110121753.f9CHrnl10542@candle.pha.pa.us

Context information: the bug breaks Londiste, which uses
pg_attribute.attname to match columns on the primary key index with the
corrisponding columns on the table.

I found the bug after a customer reported Londiste issues on a table whose
primary key had been renamed.

Re: BUG #12752: Regression in ALTER TABLE RENAME COLUMN

От
Tom Lane
Дата:
gianni.ciolli@2ndquadrant.it writes:
> It appears that the bug discussed here has regressed since 9.1:

> http://www.postgresql.org/message-id/200110121753.f9CHrnl10542@candle.pha.pa.us

We gave up trying to make index column names match the underlying table in
9.0; so no currently supported PG release does what you wish, and it's
unlikely that any future one will either.  (This is called out as an
incompatibility in the 9.0 release notes, FWIW.)

> Context information: the bug breaks Londiste, which uses
> pg_attribute.attname to match columns on the primary key index with the
> corrisponding columns on the table.
> I found the bug after a customer reported Londiste issues on a table whose
> primary key had been renamed.

Sorry, but that's a Londiste bug not a Postgres bug.

            regards, tom lane

Re: BUG #12752: Regression in ALTER TABLE RENAME COLUMN

От
Alvaro Herrera
Дата:
Tom Lane wrote:
> gianni.ciolli@2ndquadrant.it writes:
> > It appears that the bug discussed here has regressed since 9.1:
>
> > http://www.postgresql.org/message-id/200110121753.f9CHrnl10542@candle.pha.pa.us
>
> We gave up trying to make index column names match the underlying table in
> 9.0; so no currently supported PG release does what you wish, and it's
> unlikely that any future one will either.  (This is called out as an
> incompatibility in the 9.0 release notes, FWIW.)

I think it's misleading that we name index columns following table
columns in the first place .. IMO it would be better to use some dummy
name, like the ones we assign to dropped columns.  That would be far
less tempting for tool writers.

> > Context information: the bug breaks Londiste, which uses
> > pg_attribute.attname to match columns on the primary key index with the
> > corrisponding columns on the table.
> > I found the bug after a customer reported Londiste issues on a table whose
> > primary key had been renamed.
>
> Sorry, but that's a Londiste bug not a Postgres bug.

The fix most likely involves using indkey to join table columns to index
columns in Londiste's internal queries.

--
Álvaro Herrera                http://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services

Re: BUG #12752: Regression in ALTER TABLE RENAME COLUMN

От
Gianni Ciolli
Дата:
On Mon, Feb 09, 2015 at 12:49:38PM -0500, Tom Lane wrote:
> We gave up trying to make index column names match the underlying table in
> 9.0; so no currently supported PG release does what you wish, and it's
> unlikely that any future one will either.  (This is called out as an
> incompatibility in the 9.0 release notes, FWIW.)

Ah, that makes sense. I had looked up "pg_attribute" in the
documentation, but didn't find anything...

Sorry for the noise.

> > Context information: the bug breaks Londiste, which uses
> > pg_attribute.attname to match columns on the primary key index with the
> > corrisponding columns on the table.
> > I found the bug after a customer reported Londiste issues on a table whose
> > primary key had been renamed.
>
> Sorry, but that's a Londiste bug not a Postgres bug.

Of course; I reported it as context information, meaning that no
motivation is implied.

Best wishes,
Dr. Gianni Ciolli - 2ndQuadrant Italia
PostgreSQL Training, Services and Support
gianni.ciolli@2ndquadrant.it | www.2ndquadrant.it