Thread: pgsql: Adjust string comparison so that only bitwise-equal strings are
pgsql: Adjust string comparison so that only bitwise-equal strings are
From
tgl@postgresql.org (Tom Lane)
Date:
Log Message: ----------- Adjust string comparison so that only bitwise-equal strings are considered equal: if strcoll claims two strings are equal, check it with strcmp, and sort according to strcmp if not identical. This fixes inconsistent behavior under glibc's hu_HU locale, and probably under some other locales as well. Also, take advantage of the now-well-defined behavior to speed up texteq, textne, bpchareq, bpcharne: they may as well just do a bitwise comparison and not bother with strcoll at all. NOTE: affected databases may need to REINDEX indexes on text columns to be sure they are self-consistent. Tags: ---- REL8_1_STABLE Modified Files: -------------- pgsql/src/backend/access/hash: hashfunc.c (r1.45 -> r1.45.2.1) (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/access/hash/hashfunc.c.diff?r1=1.45&r2=1.45.2.1) pgsql/src/backend/utils/adt: varchar.c (r1.113 -> r1.113.2.1) (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/utils/adt/varchar.c.diff?r1=1.113&r2=1.113.2.1) varlena.c (r1.139.2.1 -> r1.139.2.2) (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/utils/adt/varlena.c.diff?r1=1.139.2.1&r2=1.139.2.2)