68.1. Объект верхнего уровня в манифесте #

Документ JSON, представляющий манифест копии, содержит следующие ключи.

PostgreSQL-Backup-Manifest-Version

Связанное с этим ключом значение является целым числом. Начиная с Postgres Pro 17, это 2, в предыдущих версиях — 1.

System-Identifier

Идентификатор базы данных экземпляра Postgres Pro, из которого была создана резервная копия. Это поле присутствует, только если PostgreSQL-Backup-Manifest-Version имеет значение 2.

Files

С этим ключом всегда связан список объектов, каждый из которых описывает файл, имеющийся в копии. В этом списке отсутствуют записи о файлах WAL, требующихся для использования копии, а также о самом манифесте. Структура каждого объекта в этом списке описана в Разделе 68.2.

WAL-Ranges

С этим ключом всегда связан список объектов, каждый из которых описывает диапазон записей WAL, которые необходимо прочитать для определённой линии времени, чтобы можно было восстановить эту копию. Структура этих объектов подробнее описана в Разделе 68.3.

Manifest-Checksum

Этот ключ всегда находится в последней строке файла манифеста. Связанное с ним значение содержит контрольную сумму всех предыдущих строк, вычисленную по алгоритму SHA-256. Здесь используется фиксированный алгоритм, чтобы клиенты могли разобрать манифест последовательно. Алгоритм SHA-256 имеет большую вычислительную сложность, чем CRC-32C, но манифест обычно имеет достаточно скромный размер, так что эти дополнительные вычисления не должны играть большой роли.

68.1. Backup Manifest Top-level Object #

The backup manifest JSON document contains the following keys.

PostgreSQL-Backup-Manifest-Version

The associated value is an integer. Beginning in Postgres Pro 17, it is 2; in older versions, it is 1.

System-Identifier

The database system identifier of the Postgres Pro instance where the backup was taken. This field is present only when PostgreSQL-Backup-Manifest-Version is 2.

Files

The associated value is always a list of objects, each describing one file that is present in the backup. No entries are present in this list for the WAL files that are needed in order to use the backup, or for the backup manifest itself. The structure of each object in the list is described in Section 68.2.

WAL-Ranges

The associated value is always a list of objects, each describing a range of WAL records that must be readable from a particular timeline in order to make use of the backup. The structure of these objects is further described in Section 68.3.

Manifest-Checksum

This key is always present on the last line of the backup manifest file. The associated value is a SHA-256 checksum of all the preceding lines. We use a fixed checksum method here to make it possible for clients to do incremental parsing of the manifest. While a SHA-256 checksum is significantly more expensive than a CRC-32C checksum, the manifest should normally be small enough that the extra computation won't matter very much.

FAQ