postgresql/src/backend/utils
Peter Eisentraut 2991ac5fc9 Add SQL functions for Unicode normalization
This adds SQL expressions NORMALIZE() and IS NORMALIZED to convert and
check Unicode normal forms, per SQL standard.

To support fast IS NORMALIZED tests, we pull in a new data file
DerivedNormalizationProps.txt from Unicode and build a lookup table
from that, using techniques similar to ones already used for other
Unicode data.  make update-unicode will keep it up to date.  We only
build and use these tables for the NFC and NFKC forms, because they
are too big for NFD and NFKD and the improvement is not significant
enough there.

Reviewed-by: Daniel Verite <daniel@manitou-mail.org>
Reviewed-by: Andreas Karlsson <andreas@proxel.se>
Discussion: https://www.postgresql.org/message-id/flat/c1909f27-c269-2ed9-12f8-3ab72c8caf7a@2ndquadrant.com
2020-04-02 08:56:27 +02:00
..
adt Add SQL functions for Unicode normalization 2020-04-02 08:56:27 +02:00
cache Remove rudiments of supporting procnum == 0 from 911e702077 2020-03-30 23:43:25 +03:00
error Go back to returning int from ereport auxiliary functions. 2020-03-25 11:57:36 -04:00
fmgr Implement operator class parameters 2020-03-30 19:17:23 +03:00
hash Move src/backend/utils/hash/hashfn.c to src/common 2020-02-27 09:25:41 +05:30
init Unify several ways to tracking backend type 2020-03-13 14:01:10 +01:00
mb Fix assorted typos 2020-03-31 16:00:06 +02:00
misc Add maintenance_io_concurrency to postgresql.conf.sample. 2020-04-02 16:50:36 +13:00
mmgr Revert "Specialize MemoryContextMemAllocated()." 2020-03-19 12:21:50 -07:00
resowner Improve performance of "simple expressions" in PL/pgSQL. 2020-03-26 18:58:57 -04:00
sort Introduce LogicalTapeSetExtend(). 2020-03-09 10:40:02 -07:00
time Update copyrights for 2020 2020-01-01 12:21:45 -05:00
.gitignore Rearrange makefile rules for running Gen_fmgrtab.pl. 2018-05-03 17:54:18 -04:00
errcodes.txt Update copyrights for 2020 2020-01-01 12:21:45 -05:00
Gen_dummy_probes.pl Update copyrights for 2020 2020-01-01 12:21:45 -05:00
Gen_dummy_probes.sed Update copyrights for 2020 2020-01-01 12:21:45 -05:00
Gen_fmgrtab.pl Update copyrights for 2020 2020-01-01 12:21:45 -05:00
generate-errcodes.pl Update copyrights for 2020 2020-01-01 12:21:45 -05:00
Makefile Update copyrights for 2020 2020-01-01 12:21:45 -05:00
probes.d Update copyrights for 2020 2020-01-01 12:21:45 -05:00