Docker databases do not perform well under heavy load. Everything can be configured to improve performance but going through the Docker disk access layer will significantly decrease performance. On Wednesday, November 20, 2024 at 06:06:36 AM GMT-5, Koen De Groote <kdg.dev@xxxxxxxxx> wrote: That explains a lot. I have the default of 2 max_parallel_maintenance_workers set, should I set this to 0? I realize this is of course an improvement, but working with docker containers, I'd like to avoid taking /dev/shm away from regular queries. I assume setting max_parallel_maintenance_workers to 0 is the fix here, is there perhaps something else I should know about, if I want to have control over this? Regards,Koen De Groote On Wed, Nov 20, 2024 at 12:38 AM Thomas Munro <thomas.munro@xxxxxxxxx> wrote: On Wed, Nov 20, 2024 at 11:22 AM Koen De Groote <kdg.dev@xxxxxxxxx> wrote: > Why would that be? It's the exact same data. The install is about 50GB in size. Is there something wrong with postgres 16, or did some settings significantly change, that I need to know about? I went over all the changelogs, nothing stood out as relevant to this, but that might be a lack of experience on my end. Parallel vacuum arrived in PostgreSQL 13, and that uses "dynamic shared memory" to share state between workers, and assuming dynamic_shared_memory_type=posix, that means shm_open(), which opens files under /dev/shm on Linux.