Re: BUG #16758: create temporary table with the same name loses defaults, indexes
Marc Boeren <m.boeren@guidance.nl>
From: Marc Boeren <m.boeren@guidance.nl>
To: "pgsql-bugs@lists.postgresql.org" <pgsql-bugs@lists.postgresql.org>
Date: 2020-12-01T14:18:12Z
Lists: pgsql-bugs
As a followup, if I change the name to something different from the original, like 'xy', it works as expected. > On 1 Dec 2020, at 15:09, PG Bug reporting form <noreply@postgresql.org> wrote: > > The following bug has been logged on the website: > > Bug reference: 16758 > Logged by: Marc Boeren > Email address: marc@guidance.nl > PostgreSQL version: 12.5 > Operating system: macOS / docker-debian / CentOR > Description: > > In 12.5 (and later), in a clean, empty database (in this case the default > 12.5 docker image), when I execute the following lines: > > create table xx (name text NOT NULL default '', PRIMARY KEY(name)); > > create temporary table xx > (like xx including DEFAULTS including CONSTRAINTS including > INDEXES); > > select c.relname, n.nspname > from pg_namespace n > join pg_class c on n.oid=c.relnamespace > where (c.relname LIKE 'x%') order by n.nspname, c.relname; > > I get this: > > relname nspname > "xx" "pg_temp_8" > "xx" "public" > "xx_pkey" "public" > > I expected the primary key to be copied too. Comparing the results from 12.4 > (and earlier versions): > > relname nspname > "xx" "pg_temp_8" > "xx_pkey" "pg_temp_8" > "xx" "public" > "xx_pkey" "public" > > I couldn't find anything in the changelog for 12.5 that indicates it is > intentional. I checked against 13.1 too, same problem. > The actual table is a bit larger (about 100 fields, no relations) and loses > the primary key and all indexes and defaults since 12.5. The SQL above is > the shortest form that demonstrates the issue. > > Thanks, Marc >
Commits
-
Ensure that expandTableLikeClause() re-examines the same table.
- fb500296dfa6 9.5.25 landed
- f00c4400270f 9.6.21 landed
- d98e27dc6e41 10.16 landed
- 5f9b05ada1bb 12.6 landed
- 28bb8c496691 11.11 landed
- f7f83a55bf60 14.0 landed
- dffc82a5b9d4 13.2 landed