Re: Crash report for some ICU-52 (debian8) COLLATE and work_mem values

From: "Daniel Verite" <daniel(at)manitou-mail(dot)org>
To: "Tom Lane" <tgl(at)sss(dot)pgh(dot)pa(dot)us>
Cc: "Peter Geoghegan" <pg(at)bowt(dot)ie>,"PostgreSQL mailing lists" <pgsql-bugs(at)postgresql(dot)org>,"Peter Eisentraut" <peter(dot)eisentraut(at)2ndquadrant(dot)com>
Subject: Re: Crash report for some ICU-52 (debian8) COLLATE and work_mem values
Date: 2017-08-08 23:16:43
Message-ID: d8c77c82-b60b-4999-9661-27b317af288e@manitou-mail.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-bugs pgsql-hackers

Tom Lane wrote:

> The other class of failures amounts to this loop iterating till it falls
> off the end of memory:
>
> while(schar > (tchar = *(UCharOffset+offset))) { /* since the
> contraction codepoints should be ordered, we skip all that are smaller */
> offset++;
> }
>
> which is unsurprising, because (in my core dump) schar is 1113834 which is
> larger than any possible UChar value, so the loop cannot terminate except
> by crashing. The crash occurred while trying to process this string:
>
> buf2 = 0x1614d20 "requ\364\217\273\252te",
>
> and I do not think it's coincidence that that multibyte character
> there corresponds to U+10FEEA or decimal 1113834. Apparently
> they've got some bugs with dealing with characters beyond U+FFFF,
> at least in certain locales.

For that failure, this single comparison seems to hit it consistently
with ICU-52:

# SELECT 'ab' < 'abc'||chr(128519) COLLATE "bs-x-icu";

server closed the connection unexpectedly
This probably means the server terminated abnormally
before or while processing the request.

128519 is 'SMILING FACE WITH HALO' (U+1F607), and nearby codepoints
cause the same bug.

At least from this simple test we can produce a bug report
to the maintainers who are still interested in pre-53 versions.

Best regards,
--
Daniel Vérité
PostgreSQL-powered mailer: http://www.manitou-mail.org
Twitter: @DanielVerite

In response to

Browse pgsql-bugs by date

  From Date Subject
Next Message Peter Eisentraut 2017-08-08 23:23:21 Re: BUG #14773: Incorrect documentation for the Relation logical replication message format
Previous Message Tom Lane 2017-08-08 22:35:32 Re: 9.6.3 - Backend Crash - Parallel Worker Prepared Statements

Browse pgsql-hackers by date

  From Date Subject
Next Message Peter Eisentraut 2017-08-08 23:25:37 Re: [HACKERS] Replication to Postgres 10 on Windows is broken
Previous Message Jonathan Katz 2017-08-08 22:54:24 Re: Draft for 2017-08-10 Release