PostgreSQL Source Code
git master
|
#include "postgres.h"
#include <sys/stat.h>
#include <sys/time.h>
#include <unistd.h>
#include "common/int.h"
#include "miscadmin.h"
#include "postmaster/pgarch.h"
#include "storage/copydir.h"
#include "storage/fd.h"
#include "utils/guc.h"
#include "utils/memutils.h"
Go to the source code of this file.
Macros | |
#define | CMP_BUF_SIZE (4096) |
Functions | |
static bool | basic_archive_configured (void) |
static bool | basic_archive_file (const char *file, const char *path) |
static void | basic_archive_file_internal (const char *file, const char *path) |
static bool | check_archive_directory (char **newval, void **extra, GucSource source) |
static bool | compare_files (const char *file1, const char *file2) |
void | _PG_init (void) |
void | _PG_archive_module_init (ArchiveModuleCallbacks *cb) |
Variables | |
PG_MODULE_MAGIC | |
static char * | archive_directory = NULL |
static MemoryContext | basic_archive_context |
#define CMP_BUF_SIZE (4096) |
void _PG_archive_module_init | ( | ArchiveModuleCallbacks * | cb | ) |
Definition at line 82 of file basic_archive.c.
References ArchiveModuleCallbacks::archive_file_cb, AssertVariableIsOfType, basic_archive_configured(), basic_archive_file(), and ArchiveModuleCallbacks::check_configured_cb.
void _PG_init | ( | void | ) |
Definition at line 58 of file basic_archive.c.
References ALLOCSET_DEFAULT_SIZES, AllocSetContextCreate, archive_directory, basic_archive_context, check_archive_directory(), DefineCustomStringVariable(), gettext_noop, MarkGUCPrefixReserved(), PGC_SIGHUP, and TopMemoryContext.
|
static |
Definition at line 138 of file basic_archive.c.
References archive_directory.
Referenced by _PG_archive_module_init().
|
static |
Definition at line 149 of file basic_archive.c.
References AtEOSubXact_Files(), basic_archive_context, basic_archive_file_internal(), EmitErrorReport(), error_context_stack, FlushErrorState(), HOLD_INTERRUPTS, InvalidSubTransactionId, MemoryContextReset(), MemoryContextSwitchTo(), PG_exception_stack, and RESUME_INTERRUPTS.
Referenced by _PG_archive_module_init().
|
static |
Definition at line 215 of file basic_archive.c.
References archive_directory, compare_files(), copy_file(), DEBUG1, DEBUG3, durable_rename(), elog(), epoch, ereport, errcode_for_file_access(), errmsg(), ERROR, fsync_fname(), gettimeofday(), MAXPGPATH, MyProcPid, pg_add_u64_overflow(), pg_mul_u64_overflow(), snprintf, stat, and UINT64_FORMAT.
Referenced by basic_archive_file().
Definition at line 96 of file basic_archive.c.
References GUC_check_errdetail, MAXPGPATH, newval, S_ISDIR, stat::st_mode, and stat.
Referenced by _PG_init().
|
static |
Definition at line 297 of file basic_archive.c.
References CloseTransientFile(), CMP_BUF_SIZE, ereport, errcode_for_file_access(), errmsg(), ERROR, OpenTransientFile(), PG_BINARY, and read.
Referenced by basic_archive_file_internal().
|
static |
Definition at line 43 of file basic_archive.c.
Referenced by _PG_init(), basic_archive_configured(), and basic_archive_file_internal().
|
static |
Definition at line 44 of file basic_archive.c.
Referenced by _PG_init(), and basic_archive_file().
PG_MODULE_MAGIC |
Definition at line 41 of file basic_archive.c.