Re: tiny step toward threading: reduce dependence on setlocale()

From: Jeff Davis <pgsql(at)j-davis(dot)com>
To: Peter Eisentraut <peter(at)eisentraut(dot)org>, Andreas Karlsson <andreas(at)proxel(dot)se>, pgsql-hackers(at)postgresql(dot)org
Subject: Re: tiny step toward threading: reduce dependence on setlocale()
Date: 2024-07-30 19:13:12
Message-ID: 89475ee5487d795124f4e25118ea8f1853edb8cb.camel@j-davis.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On Mon, 2024-07-29 at 21:45 +0200, Peter Eisentraut wrote:
> I have also re-reviewed the patches and I agree they are good to go.

I found a couple issues with the later patches:

* There was still some confusion about the default collation vs.
datcollate/datctype for callers of wchar2char() and char2wchar() (those
functions only work for libc). I introduced a new pg_locale_t structure
to represent datcollate/datctype regardless of datlocprovider to solve
this.

* Another loose end relying on setlocale(): in selfuncs.c, there's
still a call directly to strxfrm(), which depends on setlocale(). I
changed this to lookup the collation and then use pg_strxfrm(). That
should improve histogram selectivity estimates because it uses the
correct provider, rather than relying on setlocale(), right?

New series attached.

Regards,
Jeff Davis

Attachment Content-Type Size
v6-0001-Make-datcollate-datctype-accessible-as-a-pg_local.patch text/x-patch 8.8 KB
v6-0002-Remove-support-for-null-pg_locale_t.patch text/x-patch 29.5 KB
v6-0003-selfuncs.c-use-pg_strxfrm-instead-of-strxfrm.patch text/x-patch 4.7 KB

In response to

Browse pgsql-hackers by date

  From Date Subject
Next Message Heikki Linnakangas 2024-07-30 19:24:57 Re: Minor refactorings to eliminate some static buffers
Previous Message Nathan Bossart 2024-07-30 18:24:54 remove volatile qualifiers from pg_stat_statements