From: | Nikita Glukhov <n(dot)gluhov(at)postgrespro(dot)ru> |
---|---|
To: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>, Tomas Vondra <tomas(dot)vondra(at)enterprisedb(dot)com> |
Cc: | 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-04 22:09:26 |
Message-ID: | 99b6e9c0-30f8-131c-615a-38a08231275e@postgrespro.ru |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
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.
The following examples crashes PG13+:
CREATE EXTENSION ltree VERSION "1.1";
CREATE TABLE test AS
SELECT i::text::ltree data
FROM generate_series(1, 100000) i;
CREATE INDEX ON test USING gist (data);
ALTER EXTENSION ltree UPDATE TO "1.2";
-- works, cached bytea options is still NULL and siglen is 28
SELECT * FROM test WHERE data = '12345';
\connect
-- crash, siglen = 8
SELECT * FROM test WHERE data = '12345';
You can see here another problem: installation of opclass options
procedure does not invalidate relation's opclass options cache.
--
Nikita Glukhov
Postgres Professional:http://www.postgrespro.com
The Russian Postgres Company
From | Date | Subject | |
---|---|---|---|
Next Message | David G. Johnston | 2022-03-04 22:20:10 | Re: role self-revocation |
Previous Message | Tom Lane | 2022-03-04 22:06:38 | Re: Regression tests failures on Windows Server 2019 - on master at commit # d816f366b |