From: | Michael Paquier <michael(at)paquier(dot)xyz> |
---|---|
To: | Nikhil Kumar Veldanda <veldanda(dot)nikhilkumar17(at)gmail(dot)com> |
Cc: | Postgres hackers <pgsql-hackers(at)lists(dot)postgresql(dot)org> |
Subject: | Re: Dead code with short varlenas in toast_save_datum() |
Date: | 2025-08-06 01:30:54 |
Message-ID: | aJKwTiTnB7XLxxZP@paquier.xyz |
Views: | Whole Thread | Raw Message | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
On Tue, Aug 05, 2025 at 10:26:03AM -0700, Nikhil Kumar Veldanda wrote:
> This code path is currently not covered by tests. It can be exercised
> with the following SQL pattern
>
> CREATE TABLE temp_tbl (a text, b text);
> ALTER TABLE temp_tbl SET (toast_tuple_target = 128);
> ALTER TABLE temp_tbl ALTER COLUMN a SET STORAGE EXTERNAL;
> ALTER TABLE temp_tbl ALTER COLUMN b SET STORAGE EXTERNAL;
> INSERT INTO temp_tbl values(repeat('a', 4000), repeat('a', 120));
Ah, thanks, nice one. I did not consider the trick of using two
attributes to bypass the check when externalizing the tuple. I'll go
add a test in strings.sql among these lines, with some TOAST slice
scans based on substr().
--
Michael
From | Date | Subject | |
---|---|---|---|
Next Message | Ajin Cherian | 2025-08-06 02:03:28 | Re: Improve pg_sync_replication_slots() to wait for primary to advance |
Previous Message | Michael Paquier | 2025-08-06 01:22:02 | Re: Test to dump and restore objects left behind by regression |