From: Tom Lane <tgl@sss.pgh.pa.us>
To: Jesse Kinkead <jesse@falkon.ai>
Cc: pgsql-bugs@lists.postgresql.org
Subject: Re: BUG #16595: Reads fail with "lost saved point in index" error after writes
Date: Thu, 27 Aug 2020 16:39:23 -0400
Message-ID: <3355930.1598560763@sss.pgh.pa.us> (raw)
In-Reply-To: <CAGBNkrpD0hds7CA6Q_3Q8+6yKuYGhcHPC5OzHkK2kXc9b5b5dQ@mail.gmail.com>
References: <16595-633118be8eef9ce2@postgresql.org>
<3032572.1598540464@sss.pgh.pa.us>
<CAGBNkrpD0hds7CA6Q_3Q8+6yKuYGhcHPC5OzHkK2kXc9b5b5dQ@mail.gmail.com>
Jesse Kinkead <jesse@falkon.ai> writes:
> It sounds like this isn't a known problem,
Well, now it is :-). I'm just finishing up testing a patch.
> and that the only workaround
> might be just dropping the index. Hmm!
Single-column GIN indexes aren't subject to the issue, so maybe you
could work around it by replacing the multicolumn index with some
single-column ones?
Also, now that I've studied the code some more, the code path with
the issue is only hit for queries that use (a) partial match or
(b) an empty query that forces a full-index scan, similar to
"arraycol @> '{}'". That might explain how come the bug went
undetected for so long. I dunno if that info will help you dodge
the bug, but maybe.
If you can't find any acceptable workaround, another idea is to
build your own server version with the patch applied, to tide
you over until there's an official release with the fix. IMO
one of the main benefits of using open-source code is that that's
normally not very difficult.
regards, tom lane
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: tgl@sss.pgh.pa.us, jesse@falkon.ai, pgsql-bugs@lists.postgresql.org
Subject: Re: BUG #16595: Reads fail with "lost saved point in index" error after writes
In-Reply-To: <3355930.1598560763@sss.pgh.pa.us>
* 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