In the /storage/db/vpostgres/pg_log/ postgresql.log file, you see entries similar to:
1 tm:2012-11-05 08:35:54.412 UTC db:VCDB pid:32351 FATAL: remaining connection slots are reserved for non-replication superuser connections 1 tm:2012-11-05 08:35:54.928 UTC db:VCDB pid:32376 FATAL: remaining connection slots are reserved for non-replication superuser connections 1 tm:2012-11-05 08:35:55.005 UTC db:VCDB pid:32383 FATAL: remaining connection slots are reserved for non-replication superuser connections
Environment
VMware vCenter Server 6.5.x VMware vCenter Server 7.0.x VMware vCenter Server Appliance 6.0.x VMware vCenter Server Appliance 5.5.x VMware vCenter Server 6.7.x VMware vCenter Server Appliance 5.1.x
Cause
The vCenter Server Appliance uses vPostgres as its embedded database. The Windows version of vCenter Server can also be configured to use an embedded vPostgres database. By default, this caters to a maximum of 100 connections. This issue occurs when all available connection slots are in use.
Resolution
To resolve this issue:
vCenter Appliance:
Log in to the vCenter Server Appliance as the root user. The default password is vmware.
Back up the postgresql.conf file by running this command:
Open the postgresql.conf file using a text editor.
Find the max_connections entry in the file and set its value to 250:
max_connections = 250
Save and close the file.
Reboot the Windows vCenter Server for the changes to take effect.
Note: Increasing max_connections uses approximately 400 bytes of shared memory per connection slot in addition to the lock space. Each lock table slot uses approximately 270 bytes of shared memory, and there are max_locks_per_transaction * (max_connections + max_prepared_transactions) lock table slots.