Re: maintenance_work_mem = 64kB doesn't work for vacuum

David Rowley <dgrowleyml@gmail.com>

From: David Rowley <dgrowleyml@gmail.com>
To: Masahiko Sawada <sawada.mshk@gmail.com>
Cc: PostgreSQL-development <pgsql-hackers@postgresql.org>
Date: 2025-03-10T02:03:24Z
Lists: pgsql-hackers

Attachments

On Mon, 10 Mar 2025 at 10:30, David Rowley <dgrowleyml@gmail.com> wrote:
> Could you do something similar to what's in hash_agg_check_limits()
> where we check we've got at least 1 item before bailing before we've
> used up the all the prescribed memory?  That seems like a safer coding
> practise as if in the future the minimum usage for a DSM segment goes
> above 256KB, the bug comes back again.

FWIW, I had something like the attached in mind.

David

Commits

  1. Fix assertion failure in parallel vacuum with minimal maintenance_work_mem setting.

  2. Lower minimum maintenance_work_mem to 64kB