Re: BUG #14407: pg_attribute shows old column names for indexes - Mailing list pgsql-bugs

From Tom Lane
Subject Re: BUG #14407: pg_attribute shows old column names for indexes
Date
Msg-id 16863.1478007243@sss.pgh.pa.us
Whole thread Raw
In response to BUG #14407: pg_attribute shows old column names for indexes  (bashtanov@imap.cc)
List pgsql-bugs
bashtanov@imap.cc writes:
> create table tt(a int primary key);
> alter table tt rename column a to b;
> select attrelid::regclass, attname from pg_attribute where attrelid =
> any('{tt,tt_pkey}'::regclass[]) and attnum > 0;

This is not a bug; we don't attempt to rename index columns when changing
the name of a heap column.  It would create collision hazards and gain
little.

If you want to see what the columns of an index actually are, I suggest
psql's \d command.  In this example it produces

regression=# \d tt_pkey
    Index "public.tt_pkey"
 Column |  Type   | Definition
--------+---------+------------
 a      | integer | b
primary key, btree, for table "public.tt"

            regards, tom lane

pgsql-bugs by date:

Previous
From: bashtanov@imap.cc
Date:
Subject: BUG #14407: pg_attribute shows old column names for indexes
Next
From: vcolborn@gmail.com
Date:
Subject: BUG #14408: Schema not found error when 2 or more indices declared on temporary table