Обсуждение: BUG #12752: Regression in ALTER TABLE RENAME COLUMN
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.
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
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
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