Re: [EXTERNAL] Re: Windows Application Issues | PostgreSQL | REF # 48475607
Andrew Dunstan <andrew@dunslane.net>
From: Andrew Dunstan <andrew@dunslane.net>
To: Thomas Munro <thomas.munro@gmail.com>,
"Haifang Wang (Centific Technologies Inc)" <v-haiwang@microsoft.com>
Cc: Sandeep Thakkar <sandeep.thakkar@enterprisedb.com>,
Rahul Pandey <pandeyrah@microsoft.com>,
Vishwa Deepak <Vishwa.Deepak@microsoft.com>,
Shawn Steele <Shawn.Steele@microsoft.com>,
Amy Wishnousky <amyw@microsoft.com>, Tom Lane <tgl@sss.pgh.pa.us>,
"pgsql-bugs@lists.postgresql.org" <pgsql-bugs@lists.postgresql.org>,
Shweta Gulati <gulatishweta@microsoft.com>,
Ashish Nawal <nawalashish@microsoft.com>
Date: 2024-08-29T15:16:53Z
Lists: pgsql-bugs
Commits
Same data as JSON:
GET /api/v1/messages/:b64id/commits
the thread's linked commits as JSON, with link sources.
API reference →
-
Reject non-ASCII locale names.
- ce17de580f90 16.5 landed
- 9c7acc33307b 17.1 landed
- adbb27ac89e0 18.0 landed
On 2024-08-28 We 6:16 AM, Thomas Munro wrote: > On Tue, Aug 27, 2024 at 9:29 AM Haifang Wang (Centific Technologies > Inc) <v-haiwang@microsoft.com> wrote: >> Just would like to follow up with you about this bug. How is it going with the investigation? > Well, we figured out that Windows is aborting inside setlocale(). The > C standard says "The pointer to string returned by the setlocale > function is such that a subsequent call with that string value and its > associated category will restore that part of the program’s locale." > Window does not conform, and crashes itself. > > One practical change we could make would be to reject non-ASCII locale > names in initdb, as in the attached, and back-patch to 16. Then the > EDB installer (a separate project that is calling initdb and providing > the non-ASCII string containing "ü") would at least get a graceful > failure instead of a crash. It hardly makes a difference to the user, > but I've finally understood that these crashes in the Windows runtime > library might be generating a stream of crash reports to Microsoft, > which might be bringing you here? > > For example: > > $ initdb -D asdf --locale="liberté" > The files belonging to this database system will be owned by user "tmunro". > This user must also own the server process. > > initdb: error: locale name "liberté" contains non-ASCII characters +1 for doing this. cheers andrew -- Andrew Dunstan EDB: https://www.enterprisedb.com