init
This commit is contained in:
53
db_include/replication/backup_manifest.h
Executable file
53
db_include/replication/backup_manifest.h
Executable file
@@ -0,0 +1,53 @@
|
||||
/*-------------------------------------------------------------------------
|
||||
*
|
||||
* backup_manifest.h
|
||||
* Routines for generating a backup manifest.
|
||||
*
|
||||
* Portions Copyright (c) 2010-2021, PostgreSQL Global Development Group
|
||||
*
|
||||
* src/include/replication/backup_manifest.h
|
||||
*
|
||||
*-------------------------------------------------------------------------
|
||||
*/
|
||||
#ifndef BACKUP_MANIFEST_H
|
||||
#define BACKUP_MANIFEST_H
|
||||
|
||||
#include "access/xlogdefs.h"
|
||||
#include "common/checksum_helper.h"
|
||||
#include "pgtime.h"
|
||||
#include "storage/buffile.h"
|
||||
|
||||
typedef enum manifest_option
|
||||
{
|
||||
MANIFEST_OPTION_YES,
|
||||
MANIFEST_OPTION_NO,
|
||||
MANIFEST_OPTION_FORCE_ENCODE
|
||||
} backup_manifest_option;
|
||||
|
||||
typedef struct backup_manifest_info
|
||||
{
|
||||
BufFile *buffile;
|
||||
pg_checksum_type checksum_type;
|
||||
pg_cryptohash_ctx *manifest_ctx;
|
||||
uint64 manifest_size;
|
||||
bool force_encode;
|
||||
bool first_file;
|
||||
bool still_checksumming;
|
||||
} backup_manifest_info;
|
||||
|
||||
extern void InitializeBackupManifest(backup_manifest_info *manifest,
|
||||
backup_manifest_option want_manifest,
|
||||
pg_checksum_type manifest_checksum_type);
|
||||
extern void AddFileToBackupManifest(backup_manifest_info *manifest,
|
||||
const char *spcoid,
|
||||
const char *pathname, size_t size,
|
||||
pg_time_t mtime,
|
||||
pg_checksum_context *checksum_ctx);
|
||||
extern void AddWALInfoToBackupManifest(backup_manifest_info *manifest,
|
||||
XLogRecPtr startptr,
|
||||
TimeLineID starttli, XLogRecPtr endptr,
|
||||
TimeLineID endtli);
|
||||
extern void SendBackupManifest(backup_manifest_info *manifest);
|
||||
extern void FreeBackupManifest(backup_manifest_info *manifest);
|
||||
|
||||
#endif
|
||||
Reference in New Issue
Block a user