Re: BUG #15285: Query used index over field with ICU collation in some cases wrongly return 0 rows - Mailing list pgsql-bugs

From Jehan-Guillaume de Rorthais
Subject Re: BUG #15285: Query used index over field with ICU collation in some cases wrongly return 0 rows
Date
Msg-id 20200818180246.04e47f8e@firost
Whole thread Raw
In response to Re: BUG #15285: Query used index over field with ICU collation in some cases wrongly return 0 rows  (Peter Geoghegan <pg@bowt.ie>)
Responses Re: BUG #15285: Query used index over field with ICU collation in some cases wrongly return 0 rows
Re: BUG #15285: Query used index over field with ICU collation in some cases wrongly return 0 rows
List pgsql-bugs
Hi Peter,

On Tue, 11 Aug 2020 21:14:03 -0700
Peter Geoghegan <pg@bowt.ie> wrote:

> On Fri, Jun 12, 2020 at 3:43 PM Jehan-Guillaume de Rorthais
> <jgdr@dalibo.com> wrote:
> > Please, find in attachment the second version of the patch, with a
> > regression test.
> 
> Is it possible to fix this by making the existing
> HAVE_UCOL_STRCOLLUTF8 test more conservative about ICU version? IOW,
> by making it only use ucol_strcollUTF8() on versions that are known to
> not be affected by this bug?

I might be missing something, but according to my tests back in June, the bug
exists in both ucol_strcollUTF8()/ucol_strcoll() and is still affecting the very
last version of ICU (67.1).

That's why my patch replaces both functions altogether using ucol_strcollIter
as replacement.

> This related ICU bug describes an issue affecting only versions 53/54:
> 
> https://unicode-org.atlassian.net/browse/ICU-11388

This bug is related to ICU4J, not ICU4C. AS far as I understand, this was
related to a bad variable type when porting the code to java. Do I miss
something?

Regards,



pgsql-bugs by date:

Previous
From: Magnus Hagander
Date:
Subject: Re: BUG #16584: could not create relation-cache initialization file "global/pg_internal.init.2002": No space left
Next
From: Michael Schanne
Date:
Subject: RE: BUG #16461: Segfault in autovacuum process