BUG #7858: Inaccurate Log Message
The following bug has been logged on the website:
Bug reference: 7858
Logged by: Jackie Zhang
Email address: jackie.qq.zhang@gmail.com
PostgreSQL version: 9.1.4
Operating system: Ubuntu
Description:
Hi,
The log message of the sanity check for "superuser_reserved_connections" in
PostmasterMain() is not accurate. See the following code snippet:
/*src/backend/postmaster/postmaster.c*/
730 /*
731 * Check for invalid combinations of GUC settings.
732 */
733 if (ReservedBackends >= MaxBackends)
734 {
735 write_stderr("%s: superuser_reserved_connections must
be less than max_connections\n", progname);
736 ExitPostmaster(1);
737 }
The problem is that "MaxBackends" is calculated by both
"autovacuum_max_workers" and "max_connections". See assign_maxconnections()
and assign_autovacuum_max_workers() in src/backend/utils/misc/guc.c.
The log message should inform both the two configuration parameters instead
of only one -- the root cause could be the oversized
"autovacuum_max_workers".
Thanks,
Jackie
--
Sent via pgsql-bugs mailing list (pgsql-bugs@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-bugs
On Fri, Feb 8, 2013 at 06:46:29AM +0000, jackie.qq.zhang@gmail.com wrote:
The following bug has been logged on the website:
Bug reference: 7858
Logged by: Jackie Zhang
Email address: jackie.qq.zhang@gmail.com
PostgreSQL version: 9.1.4
Operating system: Ubuntu
Description:Hi,
The log message of the sanity check for "superuser_reserved_connections" in
PostmasterMain() is not accurate. See the following code snippet:/*src/backend/postmaster/postmaster.c*/
730 /*
731 * Check for invalid combinations of GUC settings.
732 */
733 if (ReservedBackends >= MaxBackends)
734 {
735 write_stderr("%s: superuser_reserved_connections must
be less than max_connections\n", progname);
736 ExitPostmaster(1);
737 }The problem is that "MaxBackends" is calculated by both
"autovacuum_max_workers" and "max_connections". See assign_maxconnections()
and assign_autovacuum_max_workers() in src/backend/utils/misc/guc.c.The log message should inform both the two configuration parameters instead
of only one -- the root cause could be the oversized
"autovacuum_max_workers".
The calculation, ReservedBackends >= MaxBackends, was corrected in
Postgres 9.3 with this commit:
commit b3055ab4fb5839a872bfe354b2b5ac31e6903ed6
Author: Magnus Hagander <magnus@hagander.net>
Date: Fri Aug 10 14:49:03 2012 +0200
Fix upper limit of superuser_reserved_connections, add limit for wal_senders
Should be limited to the maximum number of connections excluding
autovacuum workers, not including.
Add similar check for max_wal_senders, which should never be higher than
max_connections.
--
Bruce Momjian <bruce@momjian.us> http://momjian.us
EnterpriseDB http://enterprisedb.com
+ It's impossible for everything to be true. +
--
Sent via pgsql-bugs mailing list (pgsql-bugs@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-bugs