but it is encoded as a string of hexadecimal
digits. Each pair of hexadecimal digits in the string represents a
single octet.
</para>
<para>
The following two keys are always present:
</para>
<variablelist>
<varlistentry>
<term><literal>Size</literal></term>
<listitem>
<para>
The expected size of this file, as an integer.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><literal>Last-Modified</literal></term>
<listitem>
<para>
The last modification time of the file as reported by the server at
the time of the backup. Unlike the other fields stored in the backup,
this field is not used by <xref linkend="app-pgverifybackup" />.
It is included only for informational purposes.
</para>
</listitem>
</varlistentry>
</variablelist>
<para>
If the backup was taken with file checksums enabled, the following
keys will be present:
</para>
<variablelist>
<varlistentry>
<term><literal>Checksum-Algorithm</literal></term>
<listitem>
<para>
The checksum algorithm used to compute a checksum for this file.
Currently, this will be the same for every file in the backup
manifest, but this may change in future releases. At present, the
supported checksum algorithms are <literal>CRC32C</literal>,
<literal>SHA224</literal>,
<literal>SHA256</literal>,
<literal>SHA384</literal>, and
<literal>SHA512</literal>.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><literal>Checksum</literal></term>
<listitem>
<para>
The checksum computed for this file, stored as a series of
hexadecimal characters, two for each byte of the checksum.
</para>
</listitem>
</varlistentry>
</variablelist>
</sect1>
<sect1 id="backup-manifest-wal-ranges">
<title>Backup Manifest WAL Range Object</title>
<para>
The object which describes a WAL range always has three keys:
</para>
<variablelist>
<varlistentry>
<term><literal>Timeline</literal></term>
<listitem>
<para>
The timeline for this range of WAL records, as an integer.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><literal>Start-LSN</literal></term>
<listitem>
<para>
The LSN at which replay must begin on the indicated timeline in order to
make use of this backup. The LSN is stored in the format normally used
by <productname>PostgreSQL</productname>; that is, it is a string
consisting of two strings of hexadecimal characters, each with a length
of between 1 and 8, separated by a slash.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><literal>End-LSN</literal></term>
<listitem>
<para>
The earliest LSN at which replay on the indicated timeline may end when
making use of this backup. This is stored in the same format as
<literal>Start-LSN</literal>.
</para>
</listitem>
</varlistentry>
</variablelist>
<para>
Ordinarily, there will be only a single WAL range. However, if a backup is
taken from a standby which switches timelines during the backup due to an
upstream promotion, it is possible for multiple ranges to be present, each
with a different timeline. There will never be multiple WAL ranges present
for the same timeline.
</para>
</sect1>
</chapter>