On Jun 27, 2008, at 18:22, David E. Wheeler wrote:
Please find attached a patch adding a locale-aware, case-insensitive text type, called citext, as a contrib module.
Here is a new version of the patch, with the following changes: * Fixed formatting to be more like core. * Added appropriate NEGATORs to operators. * Removed NEGATOR from the || operator. * Added hash index function and operator class. * The = operator now supports HASHES and MERGES. * citext_cmp and citextcmp both return int32. * Changed // comments to /* comments */. * Added test confirming láska'::citext <> 'laská'::citext. * A few other organizational, formatting, and pasto fixes.* Updated the FAQ entry on case-insensitive queries to recommend citext (it would, of course, need to be translated).
Stuff I was asked about but didn't change:* citext_cmp() still uses varstr_cmp() instead of strncmp(). When I tried the latter, everything seemed to be equivalent. * citext_smaller() and citext_larger() don't have memory leaks, says Tom, so I added no calls to PG_FREE_IF_COPY().
Thank you everyone for your feedback and suggestions! Best, David
citext2.patch.gz
Description: GNU Zip compressed data
-- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers