PostgreSQL Source Code git master
All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
tblspcdesc.c File Reference
#include "postgres.h"
#include "commands/tablespace.h"
Include dependency graph for tblspcdesc.c:

Go to the source code of this file.

Functions

void tblspc_desc (StringInfo buf, XLogReaderState *record)
 
const char * tblspc_identify (uint8 info)
 

Function Documentation

◆ tblspc_desc()

void tblspc_desc ( StringInfo  buf,
XLogReaderState record 
)

Definition at line 21 of file tblspcdesc.c.

22{
23 char *rec = XLogRecGetData(record);
24 uint8 info = XLogRecGetInfo(record) & ~XLR_INFO_MASK;
25
26 if (info == XLOG_TBLSPC_CREATE)
27 {
29
30 appendStringInfo(buf, "%u \"%s\"", xlrec->ts_id, xlrec->ts_path);
31 }
32 else if (info == XLOG_TBLSPC_DROP)
33 {
35
36 appendStringInfo(buf, "%u", xlrec->ts_id);
37 }
38}
uint8_t uint8
Definition: c.h:500
static char * buf
Definition: pg_test_fsync.c:72
void appendStringInfo(StringInfo str, const char *fmt,...)
Definition: stringinfo.c:145
char ts_path[FLEXIBLE_ARRAY_MEMBER]
Definition: tablespace.h:33
#define XLOG_TBLSPC_DROP
Definition: tablespace.h:28
#define XLOG_TBLSPC_CREATE
Definition: tablespace.h:27
#define XLogRecGetInfo(decoder)
Definition: xlogreader.h:410
#define XLogRecGetData(decoder)
Definition: xlogreader.h:415

References appendStringInfo(), buf, xl_tblspc_create_rec::ts_id, xl_tblspc_drop_rec::ts_id, xl_tblspc_create_rec::ts_path, XLOG_TBLSPC_CREATE, XLOG_TBLSPC_DROP, XLogRecGetData, and XLogRecGetInfo.

◆ tblspc_identify()

const char * tblspc_identify ( uint8  info)

Definition at line 41 of file tblspcdesc.c.

42{
43 const char *id = NULL;
44
45 switch (info & ~XLR_INFO_MASK)
46 {
48 id = "CREATE";
49 break;
51 id = "DROP";
52 break;
53 }
54
55 return id;
56}
#define XLR_INFO_MASK
Definition: xlogrecord.h:62

References XLOG_TBLSPC_CREATE, XLOG_TBLSPC_DROP, and XLR_INFO_MASK.