Re: Optimization for lower(), upper(), casefold() functions.
Jeff Davis <pgsql@j-davis.com>
From: Jeff Davis <pgsql@j-davis.com>
To: Alexander Borisov <lex.borisov@gmail.com>, Heikki Linnakangas <hlinnaka@iki.fi>, pgsql-hackers@postgresql.org
Date: 2025-03-14T03:43:49Z
Lists: pgsql-hackers
Commits
Same data as JSON:
GET /api/v1/messages/:b64id/commits
the thread's linked commits as JSON, with link sources.
API reference →
-
Fix headerscheck warning.
- 549ea06e4217 18.0 landed
-
Optimization for lower(), upper(), casefold() functions.
- 27bdec06841d 18.0 landed
-
Refactor convert_case() to prepare for optimizations.
- d3b2e5e1ab5c 18.0 landed
-
Improve performance of Unicode {de,re}composition in the backend
- 783f0cc64dcc 14.0 cited
Attachments
- v6j-0001-Optimization-for-lower-upper-casefold-functions.patch (text/x-patch) patch 0001
On Wed, 2025-03-12 at 23:39 +0300, Alexander Borisov wrote: > v5 attached. Attached v6j. * marked arrays as "static const" rather than just "static" * ran pgindent * changed data types where appropriate (uint32->pg_wchar) * modified perl code so that it produces code that's already pgindented * cleanup of perl code, removing unnecessary subroutines and variables * added a few comments * ran pgperltidy Some of the perl code working with ranges still needs further cleanup and explanation, though. Also, I ran some of my own simple tests (mostly ASCII) and it showed over 10% speedup. That combined with the smaller table sizes makes this well worth it. Regards, Jeff Davis