mirror of
https://github.com/postgres/postgres.git
synced 2025-09-02 04:21:28 +03:00
Report progress of startup operations that take a long time.
Users sometimes get concerned whe they start the server and it emits a few messages and then doesn't emit any more messages for a long time. Generally, what's happening is either that the system is taking a long time to apply WAL, or it's taking a long time to reset unlogged relations, or it's taking a long time to fsync the data directory, but it's not easy to tell which is the case. To fix that, add a new 'log_startup_progress_interval' setting, by default 10s. When an operation that is known to be potentially long-running takes more than this amount of time, we'll log a status update each time this interval elapses. To avoid undesirable log chatter, don't log anything about WAL replay when in standby mode. Nitin Jadhav and Robert Haas, reviewed by Amul Sul, Bharath Rupireddy, Justin Pryzby, Michael Paquier, and Álvaro Herrera. Discussion: https://postgr.es/m/CA+TgmoaHQrgDFOBwgY16XCoMtXxsrVGFB2jNCvb7-ubuEe1MGg@mail.gmail.com Discussion: https://postgr.es/m/CAMm1aWaHF7VE69572_OLQ+MgpT5RUiUDgF1x5RrtkJBLdpRj3Q@mail.gmail.com
This commit is contained in:
@@ -6549,6 +6549,30 @@ local0.* /var/log/postgresql
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry id="guc-log-startup-progress-interval" xreflabel="log_startup_progress_interval">
|
||||
<term><varname>log_startup_progress_interval</varname> (<type>integer</type>)
|
||||
<indexterm>
|
||||
<primary><varname>log_startup_progress_interval</varname> configuration parameter</primary>
|
||||
</indexterm>
|
||||
</term>
|
||||
<listitem>
|
||||
<para>
|
||||
Sets the amount of time after which the startup process will log
|
||||
a message about a long-running operation that is still in progress,
|
||||
as well as the interval between further progress messages for that
|
||||
operation. This setting is applied separately to each operation.
|
||||
For example, if syncing the data directory takes 25 seconds and
|
||||
thereafter resetting unlogged relations takes 8 seconds, and if this
|
||||
setting has the default value of 10 seconds, then a messages will be
|
||||
logged for syncing the data directory after it has been in progress
|
||||
for 10 seconds and again after it has been in progress for 20 seconds,
|
||||
but nothing will be logged for resetting unlogged operations.
|
||||
A setting of <literal>0</literal> disables the feature. If this value
|
||||
is specified without units, it is taken as milliseconds.
|
||||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
</variablelist>
|
||||
|
||||
<para>
|
||||
|
Reference in New Issue
Block a user