Re: ltree_gist indexes broken after pg_upgrade from 12 to 13

From: Alexander Korotkov <aekorotkov(at)gmail(dot)com>
To: Tomas Vondra <tomas(dot)vondra(at)enterprisedb(dot)com>
Cc: Nikita Glukhov <n(dot)gluhov(at)postgrespro(dot)ru>, Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>, PostgreSQL Hackers <pgsql-hackers(at)lists(dot)postgresql(dot)org>, Andres Freund <andres(at)anarazel(dot)de>
Subject: Re: ltree_gist indexes broken after pg_upgrade from 12 to 13
Date: 2022-03-07 23:05:04
Message-ID: CAPpHfdtBVWdcCDLhr-Ehapx-tQaesrUsmWAqaFUd_6Cf4hpnhw@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On Sun, Mar 6, 2022 at 8:28 PM Tomas Vondra
<tomas(dot)vondra(at)enterprisedb(dot)com> wrote:
> On 3/6/22 08:09, Alexander Korotkov wrote:
> > Sorry for this terrible oversight by me.
> >
> > On Sat, Mar 5, 2022 at 10:13 AM Tomas Vondra
> > <tomas(dot)vondra(at)enterprisedb(dot)com> wrote:
> >> On 3/4/22 23:09, Nikita Glukhov wrote:
> >>> On 04.03.2022 23:28, Tom Lane wrote:
> >>>
> >>>> Tomas Vondra <tomas(dot)vondra(at)enterprisedb(dot)com> writes:
> >>>>> On 3/4/22 20:29, Nikita Glukhov wrote:
> >>>>>> So, we probably have corrupted indexes that were updated since such
> >>>>>> "incomplete" upgrade of ltree.
> >>>>> IIRC pg_upgrade is not expected to upgrade extensions - it keeps the
> >>>>> installed version of the extension, and that's intentional.
> >>>> Yeah, exactly. But this opens up an additional consideration we
> >>>> have to account for: whatever we do needs to work with either 1.1
> >>>> or 1.2 SQL-level versions of the extension.
> >>>>
> >>>> regards, tom lane
> >>>
> >>> It becomes clear that ltree upgrade 1.1 => 1.2 is broken, the problem
> >>> is not so much related to PG12 => PG13+ upgrades.
> >
> > So, it seems that ltree 1.1 in PG13+ is incompatible with ltree on
> > PG12 and ltree 1.2 on PG13+. And there are many scenarios involving.
> >
> > It seems too difficult to identify all the broken cases in the release
> > notes. What about applying a patch and asking all ltree users to
> > reindex their indexes?
> >
>
> Yeah. I think this is getting so complicated that there's little chance
> we'd be able to clearly explain when to reindex.

Good. The revised patch is attached. Instead of adding argument to
LTREE_GET_ASIGLEN(), it introduces separate LTREE_GET_SIGLEN() and
LTREE_GET_ASIGLEN() macros.

------
Regards,
Alexander Korotkov

Attachment Content-Type Size
0001-ltree-gist-siglen-fix-v2.patch application/octet-stream 3.7 KB

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Marek Kulik 2022-03-07 23:05:16 Recovering stat file from crash
Previous Message Zhihong Yu 2022-03-07 22:53:15 Re: support for MERGE