| From: | Peter Eisentraut <peter(dot)eisentraut(at)enterprisedb(dot)com> |
|---|---|
| To: | pgsql-hackers <pgsql-hackers(at)postgresql(dot)org> |
| Subject: | Move definition of standard collations from initdb to pg_collation.dat |
| Date: | 2023-03-28 10:19:57 |
| Message-ID: | 08b58ecd-0d50-9395-ed51-dc8294e3fd2b@enterprisedb.com |
| Views: | Whole Thread | Raw Message | Download mbox | Resend email |
| Thread: | |
| Lists: | pgsql-hackers |
While working on [0], I was wondering why the collations ucs_basic and
unicode are not in pg_collation.dat. I traced this back through
history, and I think this was just lost in a game of telephone.
The initial commit for pg_collation.h (414c5a2ea6) has only the default
collation in pg_collation.h (pre .dat), with initdb handling everything
else. Over time, additional collations "C" and "POSIX" were moved to
pg_collation.h, and other logic was moved from initdb to
pg_import_system_collations(). But ucs_basic was untouched. Commit
0b13b2a771 rearranged the relative order of operations in initdb and
added the current comment "We don't want to pin these", but looking at
the email[1], I think this was more a guess about the previous intent.
I suggest we fix this now; see attached patch.
[0]:
https://www.postgresql.org/message-id/flat/1293e382-2093-a2bf-a397-c04e8f83d3c2%40enterprisedb.com
[1]: https://www.postgresql.org/message-id/28195.1498172402%40sss.pgh.pa.us
| Attachment | Content-Type | Size |
|---|---|---|
| 0001-Move-definition-of-standard-collations-from-initdb-t.patch | text/plain | 2.6 KB |
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Alvaro Herrera | 2023-03-28 11:22:48 | "variable not found in subplan target list" |
| Previous Message | Brar Piening | 2023-03-28 10:17:28 | Re: doc: add missing "id" attributes to extension packaging page |