Type: | integer |
Default: | 8 |
Min: | 0 |
Max: | 262143 |
Context: | postmaster |
Restart: | true |
Since: | 9.4 |
Sets the maximum number of background processes that the system can support. This parameter can only be set at server start. The default is 8.
When running a standby server, you must set this parameter to the same or higher value than on the primary server. Otherwise, queries will not be allowed in the standby server.
When changing this value, consider also adjusting max_parallel_workers, max_parallel_maintenance_workers, and max_parallel_workers_per_gather.
Recommendations
Increase to max_parallel_workers + other workers, such as workers for logical replication and custom background workers. Not more than your number of cores, though.
On StackOverflow
On pgsql-hackers
- Re: Fix the description of GUC "max_locks_per_transaction" and "max_pred_locks_per_transaction" in guc_table.c
- Re: Proposal: Adding isbgworker column to pg_stat_activity
- RE: Force streaming every change in logical decoding
- Re: proposal: Allocate work_mem From Pool
- Re: Add index scan progress to pg_stat_progress_vacuum