Re: [BUG] false positive in bt_index_check in case of short 4B varlena datum
Alexander Lakhin <exclusion@gmail.com>
From: Alexander Lakhin <exclusion@gmail.com>
To: "Andrey M. Borodin" <x4mmm@yandex-team.ru>,
Michael Zhilin <m.zhilin@postgrespro.ru>
Cc: pgsql-bugs@postgresql.org, y sokolov <y.sokolov@postgrespro.ru>
Date: 2024-01-07T19:00:00Z
Lists: pgsql-bugs
Hello Andrey,
07.01.2024 21:04, Andrey M. Borodin wrote:
>> On 14 Dec 2023, at 21:18, Michael Zhilin <m.zhilin@postgrespro.ru> wrote:
> I've checked that:
> * bug is reproduced by the test in the patch
> * bug is fixed by the patch
> * fix seems idiomatic, similar to nearby code
>
What is your opinion regarding similar failures, which are not addressed
by the patch? Besides the case shown above, there is another one:
CREATE TABLE tbl(i int4, t text);
ALTER TABLE tbl ALTER COLUMN t SET STORAGE plain;
CREATE INDEX tbl_idx ON tbl (t, i) WITH (fillfactor = 10);
INSERT INTO tbl SELECT g, repeat('Test', 250) FROM generate_series(1, 130) g;
ALTER TABLE tbl ALTER COLUMN t SET STORAGE extended;
CREATE EXTENSION amcheck;
SELECT bt_index_check('tbl_idx', true);
ERROR: heap tuple (0,1) from table "tbl" lacks matching index tuple within index "tbl_idx"
HINT: Retrying verification using the function bt_index_parent_check() might provide a more specific error.
Best regards,
Alexander
Commits
Same data as JSON:
GET /api/v1/messages/:b64id/commits
the thread's linked commits as JSON, with link sources.
API reference →
-
amcheck: Use correct varlena size accessor in bt_normalize_tuple()
- 4284476c0f67 15 (unreleased) landed
- c89a1ca01344 16 (unreleased) landed
- 8abb8a1555f4 17 (unreleased) landed
- af09b18cbadb 14 (unreleased) landed
- 897e79486296 18 (unreleased) landed
- da1eff08a5be 19 (unreleased) landed