Consider:
rhaas=# create table foo (a text);
CREATE TABLE
rhaas=# create unique index on foo (a collate "C");
CREATE INDEX
rhaas=# alter table foo add primary key using index foo_a_idx;
ALTER TABLE
rhaas=# \d foo
Table "public.foo"
Column | Type | Modifiers
--------+------+-----------
a | text | not null
Indexes:
"foo_a_idx" PRIMARY KEY, btree (a COLLATE "C")
Now dump and restore this database. Then:
rhaas=# \d foo
Table "public.foo"
Column | Type | Modifiers
--------+------+-----------
a | text | not null
Indexes:
"foo_a_idx" PRIMARY KEY, btree (a)
Notice that the collation specifier is gone. Oops.
--
Robert Haas
EnterpriseDB: http://www.enterprisedb.com
The Enterprise PostgreSQL Company