From: | Masahiko Sawada <msawada(at)postgresql(dot)org> |
---|---|
To: | pgsql-committers(at)lists(dot)postgresql(dot)org |
Subject: | pgsql: Fix assertion failure in parallel vacuum with minimal maintenanc |
Date: | 2025-03-18 23:38:59 |
Message-ID: | E1tugWR-003Av3-1J@gemulon.postgresql.org |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-committers |
Fix assertion failure in parallel vacuum with minimal maintenance_work_mem setting.
bbf668d66fbf lowered the minimum value of maintenance_work_mem to
64kB. However, in parallel vacuum cases, since the initial underlying
DSA size is 256kB, it attempts to perform a cycle of index vacuuming
and table vacuuming with an empty TID store, resulting in an assertion
failure.
This commit ensures that at least one page is processed before index
vacuuming and table vacuuming begins.
Backpatch to 17, where the minimum maintenance_work_mem value was
lowered.
Reviewed-by: David Rowley <dgrowleyml(at)gmail(dot)com>
Discussion: https://postgr.es/m/CAD21AoCEAmbkkXSKbj4dB+5pJDRL4ZHxrCiLBgES_g_g8mVi1Q@mail.gmail.com
Backpatch-through: 17
Branch
------
master
Details
-------
https://git.postgresql.org/pg/commitdiff/f4290f20dd4d6f75e01fbb87304c3b8f31d1cfea
Modified Files
--------------
src/backend/access/heap/vacuumlazy.c | 7 +++++--
src/test/regress/expected/vacuum.out | 12 ++++++++++++
src/test/regress/sql/vacuum.sql | 13 +++++++++++++
3 files changed, 30 insertions(+), 2 deletions(-)
From | Date | Subject | |
---|---|---|---|
Next Message | Gregory Smith | 2025-03-18 23:52:04 | Re: Increase default maintenance_io_concurrency to 16 |
Previous Message | Masahiko Sawada | 2025-03-18 23:38:55 | pgsql: Fix assertion failure in parallel vacuum with minimal maintenanc |