David,
> But I'm also interested in how Elein made the email domain case-
> insensitive, since I'd like to have/create a truly case-insensitive
> text type (ITEXT anyone?). The functions for the operator class there
> were mainly written in SQL, and if it adds a significant overhead,
> I'm not sure it'd be a good idea to use that approach for a case-
> insensitive text type, since I use it quite a lot in my apps, and
> often do LIKE queries against text data. Thoughts?
Well, current case-insensitivity hacks definitely aren't compatible with
LIKE as far as "begins with" indexes are concerned. Of course, floating
LIKEs (%value%) are going to suck no matter what data type you're using.
I created an operator for CI equality ... =~ ... which performs well on
indexed columns. But it doesn't do "begins with".
ITEXT is a TODO, but there are reasons why it's harder than it looks.
--
--Josh
Josh Berkus
PostgreSQL @ Sun
San Francisco