Re: 9.1beta1 "collate" test failure - Mailing list pgsql-bugs

From Tom Lane
Subject Re: 9.1beta1 "collate" test failure
Date
Msg-id 17343.1305041912@sss.pgh.pa.us
Whole thread Raw
In response to Re: 9.1beta1 "collate" test failure  (Martin Pitt <mpitt@debian.org>)
List pgsql-bugs
Martin Pitt <mpitt@debian.org> writes:
> Tom Lane [2011-05-10 10:03 -0400]:
>> [ raised eyebrow... ]  What platform?  This seems to point towards "C"
>> locale not doing what it is supposed to ...

> After your comment I checked locales on my system, and for some reason
> I had an /usr/lib/locales/C.UTF-8/ besides the usual locale-archive. I
> cleaned this up, and it works now.

Hmm ... I think that's probably still a bug, actually.  Apparently what
happened is that initdb injected an entry for "C" with encoding UTF8
into pg_collation, and then that was used instead of the intended
"all-encodings" C entry, and then since the actual LC_COLLATE string
wasn't precisely "C" we didn't go down the strcmp() code path but used
whatever the locale file said to do ... which evidently wasn't really
"C" behavior.

We probably need to tweak initdb to be real sure it won't add entries
that conflict with the built-in ones.  This is already prohibited by
CREATE COLLATION but initdb has to bypass that check.

Thanks for the report!

            regards, tom lane

pgsql-bugs by date:

Previous
From: Martin Pitt
Date:
Subject: Re: 9.1beta1 "collate" test failure
Next
From: Martin Pitt
Date:
Subject: Changed behaviour of \'