As a result of the constraint output functions being shared between pg_dump and psql, some of the output is mis-quoted in the display area for columns including quotes. Notice it's correct in the table Column list, but the constraint has the escaped versions.
Thoughts? rt=# create table c ("""vers""ion""" integer unique references a); NOTICE: CREATE TABLE / UNIQUE will create implicit index "c_"vers"ion"_key" for table "c" CREATE TABLE rt=# \d c Table "public.c" Column | Type | Modifiers ------------+---------+----------- "vers"ion" | integer | Indexes: "c_"vers"ion"_key" unique, btree ("""vers""ion""") Foreign-key constraints: "$1" FOREIGN KEY ("""vers""ion""") REFERENCES a("version") ---------------------------(end of broadcast)--------------------------- TIP 9: the planner will ignore your desire to choose an index scan if your joining column's datatypes do not match