pg.ddx.io  pgsql-bugs@postgresql.org mailing list archive  
help / color / mirror / Atom feed
From: Peter Eisentraut <peter.eisentraut@enterprisedb.com>
To: Peter Geoghegan <pg@bowt.ie>
To: eronenp@gmail.com, PostgreSQL mailing lists <pgsql-bugs@lists.postgresql.org>
Subject: Re: BUG #17362: Error "could not find block containing chunk" when using index with icu collation on CentOS 7
Date: Thu, 13 Jan 2022 16:22:16 +0100
Message-ID: <efd06d12-549b-8490-54f4-e43f7fb1d2cc@enterprisedb.com> (raw)
In-Reply-To: <3869d444-2f89-f157-318d-a71ed712dcb7@enterprisedb.com>
References: <17362-63967721ee562fa7@postgresql.org>
	<CAH2-Wz=K4AZqQentZ0VgYjk3RpRA8n6oVrt2Cv0b977dA4qrDQ@mail.gmail.com>
	<3869d444-2f89-f157-318d-a71ed712dcb7@enterprisedb.com>


On 13.01.22 16:12, Peter Eisentraut wrote:
> On 11.01.22 23:19, Peter Geoghegan wrote:
>> On Tue, Jan 11, 2022 at 3:16 AM PG Bug reporting form
>> <noreply@postgresql.org> wrote:
>>> When I query a table containing certain Unicode data, using an index 
>>> that
>>> has certain collation, I get error message "could not find block 
>>> containing
>>> chunk". This is fully reproducible on CentOS 7 using the official 
>>> RPM. (I
>>> could not reproduce this on Oracle Linux 8, though):
>>
>> It looks like you're probably not using utf8 as your database
>> encoding, based on the stacktrace -- even though I would expect that
>> on your ICU version. What does "show server_encoding;" show you when
>> run from psql?
>>
>> My guess is that you can temporarily work around the bug (which looks
>> like a bug in our !HAVE_UCOL_STRCOLLUTF8 ICU support) by making sure
>> to use UTF-8 as the server encoding.
> 
> It looks like the reporter's system is rhel7, which does not have 
> HAVE_UCOL_STRCOLLUTF8, so it will use the other code independent of the 
> encoding.
> 
> There could very well be some subtle memory counting bug or similar in 
> icu_to_uchar() perhaps.  Needs more analysis.

Ok, I can reproduce this with the given test data and steps if I undef 
HAVE_UCOL_STRCOLLUTF8 in my build.

Interestingly, I couldn't just rebuild and rerun the query.  In order 
for the error to occur, I had to rebuild the index.





view thread (8+ messages)  latest in thread

Message-ID: <efd06d12-549b-8490-54f4-e43f7fb1d2cc@enterprisedb.com>
Permalink:  ../efd06d12-549b-8490-54f4-e43f7fb1d2cc@enterprisedb.com/
Also on:    postgresql.org/message-id/efd06d12-549b-8490-54f4-e43f7fb1d2cc@enterprisedb.com

 · 

reply

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Reply to all the recipients using the --to and --cc options:
  reply via email

  To: pgsql-bugs@postgresql.org
  Cc: peter.eisentraut@enterprisedb.com, pg@bowt.ie, pgsql-bugs@lists.postgresql.org
  Subject: Re: BUG #17362: Error "could not find block containing chunk" when using index with icu collation on CentOS 7
  In-Reply-To: <efd06d12-549b-8490-54f4-e43f7fb1d2cc@enterprisedb.com>

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

This inbox is served by DDX for PostgreSQL; see mirroring instructions
for how to clone and mirror all data and code used for this inbox