From: | Noah Misch <noah(at)leadboat(dot)com> |
---|---|
To: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
Cc: | Robert Haas <robertmhaas(at)gmail(dot)com>, Peter Geoghegan <pg(at)heroku(dot)com>, Marc-Olaf Jaschke <marc-olaf(dot)jaschke(at)s24(dot)com>, Postgres-Bugs <pgsql-bugs(at)postgresql(dot)org> |
Subject: | Re: Missing rows with index scan when collation is not "C" (PostgreSQL 9.5) |
Date: | 2016-03-23 02:44:45 |
Message-ID: | 20160323024445.GA1306688@tornado.leadboat.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-bugs pgsql-hackers |
On Tue, Mar 22, 2016 at 07:19:44PM -0400, Tom Lane wrote:
> Robert Haas <robertmhaas(at)gmail(dot)com> writes:
> > I was a little worried that it was too much to hope for that all libc
> > vendors on earth would ship a strxfrm() implementation that was actually
> > consistent with strcoll(), and here we are.
>
> Indeed. To try to put some scope on the problem, I made an idiot little
> program that just generates some random UTF8 strings and sees whether
> strcoll and strxfrm sort them alike. Attached are that program, a even
> more idiot little shell script that runs it over all available UTF8
> locales, and the results on my RHEL6 box. While de_DE seems to be the
> worst-broken locale, it's far from the only one.
>
> Please try this on as many platforms as you can get hold of ...
I, too, found MAXXFRMLEN insufficient; I raised it fourfold. Cygwin
2.2.1(0.289/5/3) caught fire; 10% of locales passed. (varstr_sortsupport()
already blacklists the UTF8/native Windows case.) The test passed on Solaris
10, Solaris 11, HP-UX B.11.31, OpenBSD 5.0, NetBSD 5.1.2, and FreeBSD 9.0.
See attached tryalllocales.sh outputs. I did not test AIX, because the AIX
machines I use have no UTF8 locales installed.
Attachment | Content-Type | Size |
---|---|---|
cygwin | text/plain | 55.2 KB |
sol10 | text/plain | 5.4 KB |
sol11 | text/plain | 859 bytes |
hpux11.31 | text/plain | 4.5 KB |
openbsd50 | text/plain | 1.5 KB |
netbsd512 | text/plain | 3.8 KB |
freebsd9 | text/plain | 4.7 KB |
From | Date | Subject | |
---|---|---|---|
Next Message | Bernd Helmle | 2016-03-23 10:32:06 | Re: Missing rows with index scan when collation is not "C" (PostgreSQL 9.5) |
Previous Message | Tom Lane | 2016-03-23 02:41:43 | Re: Missing rows with index scan when collation is not "C" (PostgreSQL 9.5) |
From | Date | Subject | |
---|---|---|---|
Next Message | Etsuro Fujita | 2016-03-23 02:50:48 | Re: Odd system-column handling in postgres_fdw join pushdown patch |
Previous Message | Tom Lane | 2016-03-23 02:41:43 | Re: Missing rows with index scan when collation is not "C" (PostgreSQL 9.5) |