The following bug has been logged online:
Bug reference:      6053
Logged by:          Regina
Email address:      lr@pcorp.us
PostgreSQL version: 9.1beta1
Operating system:   Windows
Description:        Can't do DISTINCT on citext column
Details:
I have a table I created like this:
-- With and without the COLLATE in there I get the same error.
 CREATE TABLE test
(
  fullname citext COLLATE pg_catalog."POSIX",
);
INSERT INTO  test(fullname) VALUES('test1'),('test2');
When I do a:
SELECT DISTINCT fullname FROM test;
or a
SELECT DISTINCT fullname COLLATE pg_catalog."POSIX" FROM test;
It gives error:
ERROR:  could not determine which collation to use for lower() function
HINT:  Use the COLLATE clause to set the collation explicitly.