| From: | shihao zhong <zhong950419(at)gmail(dot)com> |
|---|---|
| To: | Matthias van de Meent <boekewurm+postgres(at)gmail(dot)com> |
| Cc: | Michael Paquier <michael(at)paquier(dot)xyz>, Andrey Borodin <x4mmm(at)yandex-team(dot)ru>, Heikki Linnakangas <hlinnaka(at)iki(dot)fi>, Srinath Reddy Sadipiralla <srinath2133(at)gmail(dot)com>, Imran Zaheer <imran(dot)zhir(at)gmail(dot)com>, Alexander Lakhin <exclusion(at)gmail(dot)com>, PostgreSQL mailing lists <pgsql-bugs(at)lists(dot)postgresql(dot)org>, Konstantin Knizhnik <knizhnik(at)garret(dot)ru> |
| Subject: | Re: BUG #19519: REPACK can fail due to missing chunk for toast value |
| Date: | 2026-10-24 04:41:55 |
| Message-ID: | CAGRkXqRuw4RznBW-YOwnDse-zBvJpL7GDH=PTnttFmZhiZ-ueg@mail.gmail.com |
| Views: | Whole Thread | Raw Message | Download mbox | Resend email |
| Thread: | |
| Lists: | pgsql-bugs |
Hi Matthias,
Thanks for v7. The DELETE cases pass for me. Three notes.
1. Rui's UPDATE case still fails. If the spec does an UPDATE instead
of the DELETE, VACUUM FULL and REPACK hit
TRAP: failed Assert("recently_dead")
v7 has the first half of Rui's 0001 but not the second half, which
drops the stashed old version in place and counts it.
2. The cleanup loop in the sort path uses bms_prev_member(), so it
frees only the first value. CLUSTER with three toasted columns peaks
at 496 MB for me, and at 76 MB with bms_next_member().
3. The tests only check that nothing fails. Could they also SELECT
the table after the rewrite, and add the UPDATE case?
The attached patch fixes 1 and 2 on top of v7.
Thanks,
Shihao
| Attachment | Content-Type | Size |
|---|---|---|
| nocfbot-v7-review-fixes.txt | text/plain | 3.8 KB |
| From | Date | Subject | |
|---|---|---|---|
| Next Message | shihao zhong | 2026-10-24 04:47:54 | Re: BUG #19759: Hashed SetOp / RecursiveUnion pre-allocate up to 64 GB from the row estimate since 8f29467c57f |
| Previous Message | BHUVAN CHILUKUTI | 2026-10-24 04:34:53 | first_value()/nth_value() with IGNORE NULLS loop forever (EXCLUDE GROUP/TIES, frame past partition end, no ORDER BY) |