Re: WIN32 pg_import_system_collations
Juan José Santamaría Flecha <juanjo.santamaria@gmail.com>
From: Juan José Santamaría Flecha <juanjo.santamaria@gmail.com>
To: Peter Eisentraut <peter.eisentraut@enterprisedb.com>
Cc: Dmitry Koval <d.koval@postgrespro.ru>, PostgreSQL Hackers <pgsql-hackers@lists.postgresql.org>
Date: 2022-11-04T22:08:24Z
Lists: pgsql-hackers
Attachments
- v7-0002-Add-collate.windows.win1252-test.patch (application/octet-stream) patch v7-0002
- v7-0001-WIN32-pg_import_system_collations.patch (application/octet-stream) patch v7-0001
On Mon, Oct 31, 2022 at 3:09 PM Peter Eisentraut < peter.eisentraut@enterprisedb.com> wrote: Thanks for taking a look into this patch. > > Consider this function you are introducing: > > +/* > + * Create a collation if the input locale is valid for so. > + * Also keeps track of the number of valid locales and collations created. > + */ > +static int > +CollationFromLocale(char *isolocale, char *localebuf, int *nvalid, > + int *ncreated, int nspid) > > This declaration is incomprehensible without studying all the callers > and the surrounding code. > > Start with the name: What does "collation from locale" mean? Does it > make a collation? Does it convert one? Does it find one? There should > be a verb in there. > > (I think in the context of this file, a lower case name would be more > appropriate for a static function.) > > Then the arguments. The input arguments should be "const". All the > arguments should be documented. What is "isolocale", what is > "localebuf", how are they different? What is being counted by "valid" > (collatons?, locales?), and what makes a thing valid and invalid? What > is being "created"? What is nspid? What is the return value? > > Please make another pass over this. > > Ok, I can definitely improve the comments for that function. > Also consider describing in the commit message what you are doing in > more detail, including some of the things that have been discussed in > this thread. > > Going through the thread for the commit message, I think that maybe the collation naming remarks were not properly addressed. In the current version the collations retain their native name, but an alias is created for those with a shape that we can assume a POSIX equivalent exists. Please find attached a new version. Regards, Juan José Santamaría Flecha
Commits
-
Remove unnecessary and problematic collate.windows.win1252 tests
- b5737efea007 16.0 landed
-
Windows support in pg_import_system_collations
- bf03cfd16217 16.0 landed