> > >> Thanks for the input. It's worth noting that the equality operator >> currently works in the same way: citext = text comparison is (surprisingly >> for me) case-sensitive. >> >> My expectation was that since citext is supposed to be a case-insensitive >> *type*, all comparison operations involving it should be case-insensitive; >> > > Comparison requires both things to be the same type. The rules for > implicitly converting one type to another prefer the core type text over > the extension type citext. > > IOW, there is no such operator =(citext,text) and thus "citext = text > comparison" is technically invalid. > > At this point we're sorta stuck with our choice, and while individual > databases can implement their own functions and operators there is value in > doing things the way the system provides to minimize future confusion and > bugs. >
OK, thanks for everyone's input.