On Mon, Sep 21, 2020 at 12:45 PM Peter Eisentraut <peter.eisentr...@2ndquadrant.com> wrote: > > On 2020-09-21 05:48, Amit Kapila wrote: > > What according to you should be the behavior here and how will it be > > better than current? > > I think if I write VACUUM (PARALLEL 5), it should use up to 5 workers > (up to the number of indexes), even if max_parallel_maintenance_workers > is 2. >
So you want it to disregard max_parallel_maintenance_workers but all parallel operations have to regard one of the max_parallel_* option so that it can respect max_parallel_workers beyond which the system won't allow more parallel workers. Now, if we won't respect one of the max_parallel_* option, it will unnecessarily try to register those many workers even though it won't be able to start those many workers. I think it is better to keep the limit for workers for scans and maintenance operations separately so that the user is allowed to perform different parallel operations in the system. -- With Regards, Amit Kapila.