Create an explicit concept of collations that work for any encoding.

Tom Lane <tgl@sss.pgh.pa.us>

Commit: e3c732a85c0f247617b2d44ea567f35731b03ea6
Author: Tom Lane <tgl@sss.pgh.pa.us>
Date: 2011-03-11T18:20:11Z
Releases: 9.1.0
Create an explicit concept of collations that work for any encoding.

Use collencoding = -1 to represent such a collation in pg_collation.
We need this to make the "default" entry work sanely, and a later
patch will fix the C/POSIX entries to be represented this way instead
of duplicating them across all encodings.  All lookup operations now
search first for an entry that's database-encoding-specific, and then
for the same name with collencoding = -1.

Also some incidental code cleanup in collationcmds.c and pg_collation.c.

Files