On 04/08/2024 06:29, Robert Treat wrote:
I was looking at trace_connection_negotiation and ran across this
commit removing it's mention from the release notes because it is
undocumented:
https://git.postgresql.org/gitweb/?p=postgresql.git;a=commitdiff;h=95cabf542f04b634303f899600ea62fb256a08c2
Why is the right solution to remove it from the release notes rather
than to document it properly? It's not like people won't notice a new
GUC has popped up in their configs. Also, presumaing I'm unerstanding
it's purpose correctly, ISTM it would fit along side other trace_*
gucs in
https://www.postgresql.org/docs/current/runtime-config-developer.html#RUNTIME-CONFIG-DEVELOPER.
Not sure whether it's worth mentioning in release notes, but I think
you're right that it should be listed in that docs section. How about
the attached description?
I see that there are two more developer-only GUCs that are not listed in
the docs:
trace_syncscan
optimize_bounded_sort
There's a comment on them that says "/* this is undocumented because not
exposed in a standard build */", but that seems like a weak reason,
given that many of the other options in that docs section also require
additional build-time options. I think we should add those to the docs
too for the sake of completeness.
--
Heikki Linnakangas
Neon (https://neon.tech)
diff --git a/doc/src/sgml/config.sgml b/doc/src/sgml/config.sgml
index a65839a6709..2f0ba3858a4 100644
--- a/doc/src/sgml/config.sgml
+++ b/doc/src/sgml/config.sgml
@@ -11667,6 +11667,26 @@ dynamic_library_path = 'C:\tools\postgresql;H:\my_project\lib;$libdir'
</listitem>
</varlistentry>
+ <varlistentry id="guc-trace-connection-negotiation" xreflabel="trace_connection_negotiation">
+ <term><varname>trace_connection_negotiation</varname> (<type>boolean</type>)
+ <indexterm>
+ <primary><varname>trace_connection_negotiation</varname> configuration parameter</primary>
+ </indexterm>
+ </term>
+ <listitem>
+ <para>
+ If on, write information to the log about encryption negotiation
+ packets on each client connection. This can be useful for debugging
+ client connectivity issues from the server side. The log messages do
+ not contain sensitive information like encryption keys.
+ </para>
+ <para>
+ This parameter can only be set in the
+ <filename>postgresql.conf</filename> file or on the server command line.
+ </para>
+ </listitem>
+ </varlistentry>
+
<varlistentry id="guc-trace-notify" xreflabel="trace_notify">
<term><varname>trace_notify</varname> (<type>boolean</type>)
<indexterm>