mirror of
https://github.com/postgres/postgres.git
synced 2025-07-27 12:41:57 +03:00
amcheck: Normalize index tuples containing uncompressed varlena
It might happen that the varlena value wasn't compressed by index_form_tuple() due to current storage parameters. If compression is currently enabled, we need to compress such values to match index tuple coming from the heap. Backpatch to all supported versions. Discussion: https://postgr.es/m/flat/7bdbe559-d61a-4ae4-a6e1-48abdf3024cc%40postgrespro.ru Author: Andrey Borodin Reviewed-by: Alexander Lakhin, Michael Zhilin, Jian He, Alexander Korotkov Backpatch-through: 12
This commit is contained in:
@ -158,6 +158,12 @@ x
|
||||
CREATE INDEX varlena_bug_idx on varlena_bug(v);
|
||||
SELECT bt_index_check('varlena_bug_idx', true);
|
||||
|
||||
-- Also check that we compress varlena values, which were previously stored
|
||||
-- uncompressed in index.
|
||||
INSERT INTO varlena_bug VALUES (repeat('Test', 250));
|
||||
ALTER TABLE varlena_bug ALTER COLUMN v SET STORAGE extended;
|
||||
SELECT bt_index_check('varlena_bug_idx', true);
|
||||
|
||||
-- cleanup
|
||||
DROP TABLE bttest_a;
|
||||
DROP TABLE bttest_b;
|
||||
|
Reference in New Issue
Block a user