Commit
67846550dc6d removed the xreflabels for initdb options, which
turned the sentence "The second field contains the page checksum if
data checksums are enabled" into "The second field contains the page
checksum if -k are enabled", as well "Only has effect if data checksums
are enabled" into "Only has effect if -k are enabled".
Fix by setting an explicit link text, and while there also change the
link to point to the data checksum page which has more information
than just the initdb option.
The original report was for one instance, further inspection turned
up quite a few more cases. Also redirect the link in the amcheck
docs which albeit was reading right, but will be more helpful if
linking to the main page on data checksums. Backpatch to v18 where
the xreflabels were removed.
Author: Daniel Gustafsson <daniel@yesql.se>
Reported-by: y.saburov@gmail.com
Reviewed-by: Laurenz Albe <laurenz.albe@cybertec.at>
Discussion: https://postgr.es/m/
178350739237.73862.
4549076173872335741@wrigleys.postgresql.org
Backpatch-through: 18
<para>
<filename>amcheck</filename> can be effective at detecting various types of
- failure modes that <link
- linkend="app-initdb-data-checksums"><application>data
- checksums</application></link> will fail to catch. These include:
+ failure modes that <link linkend="checksums">data checksums</link> will fail
+ to catch. These include:
<itemizedlist>
<listitem>
</term>
<listitem>
<para>
- Only has effect if <xref linkend="app-initdb-data-checksums"/> are enabled.
+ Only has effect if <link linkend="checksums">data checksums</link> are enabled.
</para>
<para>
Detection of a checksum failure during a read normally causes
(<structname>PageHeaderData</structname>). Its format is detailed in <xref
linkend="pageheaderdata-table"/>. The first field tracks the most
recent WAL entry related to this page. The second field contains
- the page checksum if <xref linkend="app-initdb-data-checksums"/> are
+ the page checksum if <link linkend="checksums">data checksums</link> are
enabled. Next is a 2-byte field containing flag bits. This is followed
by three 2-byte integer fields (<structfield>pd_lower</structfield>,
<structfield>pd_upper</structfield>, and