On Fri, Oct 4, 2019 at 01:35:57PM +0000, PG Doc comments form wrote: > The following documentation comment has been logged on the website: > > Page: https://www.postgresql.org/docs/12/runtime-config-client.html > Description: > > Hello, > > I was looking explicitly for information on the default value of > lock_timeout and what it does. I got this paragraph: > > "Abort any statement that waits longer than the specified number of > milliseconds while attempting to acquire a lock on a table, index, row, or > other database object. The time limit applies separately to each lock > acquisition attempt. The limit applies both to explicit locking requests > (such as LOCK TABLE, or SELECT FOR UPDATE without NOWAIT) and to > implicitly-acquired locks. If log_min_error_statement is set to ERROR or > lower, the statement that timed out will be logged. A value of zero (the > default) turns this off." > > Unfortunately, the crucial bit for me is in a sentence that hardly could be > any more obscure: `A value of zero (the default) turns this off.` Before > this sentence there are multiple statements; what exactly does `this` refers > to? Does a value of zero turns of logging of timed out statements mentioned > in the previous sentence? Would it be hard to put it like `A default value > of zero means a statement will wait indefinitely to acquire a lock`. > I believe the sole purpose of a technical document is to be precise. If I > had to suggest setting this parameter as a solution to a critical issue of > connections piling up waiting on locks and depleting connection pools, I can > never be confident knowing that the current default value turns something > off.
I completely agree. I have applied the attached patch to all supported doc versions to move the mention of log_min_error_statement to a more logical location. Thanks for the report. -- Bruce Momjian <br...@momjian.us> http://momjian.us EnterpriseDB http://enterprisedb.com + As you are, so once was I. As I am, so you will be. + + Ancient Roman grave inscription +