PostgreSQL Source Code
git master
|
#include "access/xlogreader.h"
#include "lib/stringinfo.h"
#include "storage/bufpage.h"
#include "storage/itemptr.h"
#include "storage/relfilelocator.h"
#include "utils/relcache.h"
Go to the source code of this file.
Data Structures | |
struct | xl_brin_createidx |
struct | xl_brin_insert |
struct | xl_brin_update |
struct | xl_brin_samepage_update |
struct | xl_brin_revmap_extend |
struct | xl_brin_desummarize |
Macros | |
#define | XLOG_BRIN_CREATE_INDEX 0x00 |
#define | XLOG_BRIN_INSERT 0x10 |
#define | XLOG_BRIN_UPDATE 0x20 |
#define | XLOG_BRIN_SAMEPAGE_UPDATE 0x30 |
#define | XLOG_BRIN_REVMAP_EXTEND 0x40 |
#define | XLOG_BRIN_DESUMMARIZE 0x50 |
#define | XLOG_BRIN_OPMASK 0x70 |
#define | XLOG_BRIN_INIT_PAGE 0x80 |
#define | SizeOfBrinCreateIdx (offsetof(xl_brin_createidx, version) + sizeof(uint16)) |
#define | SizeOfBrinInsert (offsetof(xl_brin_insert, offnum) + sizeof(OffsetNumber)) |
#define | SizeOfBrinUpdate (offsetof(xl_brin_update, insert) + SizeOfBrinInsert) |
#define | SizeOfBrinSamepageUpdate (sizeof(OffsetNumber)) |
#define | SizeOfBrinRevmapExtend |
#define | SizeOfBrinDesummarize |
Typedefs | |
typedef struct xl_brin_createidx | xl_brin_createidx |
typedef struct xl_brin_insert | xl_brin_insert |
typedef struct xl_brin_update | xl_brin_update |
typedef struct xl_brin_samepage_update | xl_brin_samepage_update |
typedef struct xl_brin_revmap_extend | xl_brin_revmap_extend |
typedef struct xl_brin_desummarize | xl_brin_desummarize |
Functions | |
void | brin_redo (XLogReaderState *record) |
void | brin_desc (StringInfo buf, XLogReaderState *record) |
const char * | brin_identify (uint8 info) |
void | brin_mask (char *pagedata, BlockNumber blkno) |
#define SizeOfBrinCreateIdx (offsetof(xl_brin_createidx, version) + sizeof(uint16)) |
Definition at line 55 of file brin_xlog.h.
#define SizeOfBrinDesummarize |
Definition at line 142 of file brin_xlog.h.
#define SizeOfBrinInsert (offsetof(xl_brin_insert, offnum) + sizeof(OffsetNumber)) |
Definition at line 74 of file brin_xlog.h.
#define SizeOfBrinRevmapExtend |
Definition at line 124 of file brin_xlog.h.
#define SizeOfBrinSamepageUpdate (sizeof(OffsetNumber)) |
Definition at line 107 of file brin_xlog.h.
#define SizeOfBrinUpdate (offsetof(xl_brin_update, insert) + SizeOfBrinInsert) |
Definition at line 95 of file brin_xlog.h.
#define XLOG_BRIN_CREATE_INDEX 0x00 |
Definition at line 31 of file brin_xlog.h.
#define XLOG_BRIN_DESUMMARIZE 0x50 |
Definition at line 36 of file brin_xlog.h.
#define XLOG_BRIN_INIT_PAGE 0x80 |
Definition at line 43 of file brin_xlog.h.
#define XLOG_BRIN_INSERT 0x10 |
Definition at line 32 of file brin_xlog.h.
#define XLOG_BRIN_OPMASK 0x70 |
Definition at line 38 of file brin_xlog.h.
#define XLOG_BRIN_REVMAP_EXTEND 0x40 |
Definition at line 35 of file brin_xlog.h.
#define XLOG_BRIN_SAMEPAGE_UPDATE 0x30 |
Definition at line 34 of file brin_xlog.h.
#define XLOG_BRIN_UPDATE 0x20 |
Definition at line 33 of file brin_xlog.h.
typedef struct xl_brin_createidx xl_brin_createidx |
typedef struct xl_brin_desummarize xl_brin_desummarize |
typedef struct xl_brin_insert xl_brin_insert |
typedef struct xl_brin_revmap_extend xl_brin_revmap_extend |
typedef struct xl_brin_samepage_update xl_brin_samepage_update |
typedef struct xl_brin_update xl_brin_update |
void brin_desc | ( | StringInfo | buf, |
XLogReaderState * | record | ||
) |
Definition at line 20 of file brindesc.c.
References appendStringInfo(), buf, xl_brin_insert::heapBlk, xl_brin_desummarize::heapBlk, xl_brin_update::insert, xl_brin_insert::offnum, xl_brin_samepage_update::offnum, xl_brin_update::oldOffnum, xl_brin_createidx::pagesPerRange, xl_brin_insert::pagesPerRange, xl_brin_desummarize::pagesPerRange, xl_brin_desummarize::regOffset, xl_brin_revmap_extend::targetBlk, xl_brin_createidx::version, XLOG_BRIN_CREATE_INDEX, XLOG_BRIN_DESUMMARIZE, XLOG_BRIN_INSERT, XLOG_BRIN_OPMASK, XLOG_BRIN_REVMAP_EXTEND, XLOG_BRIN_SAMEPAGE_UPDATE, XLOG_BRIN_UPDATE, XLogRecGetData, XLogRecGetInfo, and XLR_INFO_MASK.
const char* brin_identify | ( | uint8 | info | ) |
Definition at line 74 of file brindesc.c.
References XLOG_BRIN_CREATE_INDEX, XLOG_BRIN_DESUMMARIZE, XLOG_BRIN_INIT_PAGE, XLOG_BRIN_INSERT, XLOG_BRIN_REVMAP_EXTEND, XLOG_BRIN_SAMEPAGE_UPDATE, XLOG_BRIN_UPDATE, and XLR_INFO_MASK.
void brin_mask | ( | char * | pagedata, |
BlockNumber | blkno | ||
) |
Definition at line 342 of file brin_xlog.c.
References BRIN_EVACUATE_PAGE, BRIN_IS_META_PAGE, BRIN_IS_REGULAR_PAGE, BrinPageFlags, mask_page_hint_bits(), mask_page_lsn_and_checksum(), mask_unused_space(), PageHeaderData::pd_lower, and SizeOfPageHeaderData.
void brin_redo | ( | XLogReaderState * | record | ) |
Definition at line 309 of file brin_xlog.c.
References brin_xlog_createidx(), brin_xlog_desummarize_page(), brin_xlog_insert(), brin_xlog_revmap_extend(), brin_xlog_samepage_update(), brin_xlog_update(), elog, PANIC, XLOG_BRIN_CREATE_INDEX, XLOG_BRIN_DESUMMARIZE, XLOG_BRIN_INSERT, XLOG_BRIN_OPMASK, XLOG_BRIN_REVMAP_EXTEND, XLOG_BRIN_SAMEPAGE_UPDATE, XLOG_BRIN_UPDATE, XLogRecGetInfo, and XLR_INFO_MASK.