88 elog(
PANIC,
"brin_xlog_insert_update: invalid max offset number");
92 elog(
PANIC,
"brin_xlog_insert_update: failed to add tuple");
193 elog(
PANIC,
"brin_xlog_samepage_update: failed to replace tuple");
334 elog(
PANIC,
"brin_redo: unknown op code %u", info);
static void brin_xlog_revmap_extend(XLogReaderState *record)
static void brin_xlog_update(XLogReaderState *record)
BlockNumber pagesPerRange
void MarkBufferDirty(Buffer buffer)
static void brin_xlog_createidx(XLogReaderState *record)
#define XLOG_BRIN_CREATE_INDEX
void mask_page_hint_bits(Page page)
#define PageAddItem(page, item, size, offsetNumber, overwrite, is_heap)
#define BRIN_IS_REGULAR_PAGE(page)
#define SizeOfPageHeaderData
#define PageGetMaxOffsetNumber(page)
void mask_unused_space(Page page)
static void brin_xlog_insert(XLogReaderState *record)
#define XLogRecGetData(decoder)
void brin_metapage_init(Page page, BlockNumber pagesPerRange, uint16 version)
void UnlockReleaseBuffer(Buffer buffer)
#define XLOG_BRIN_DESUMMARIZE
Buffer XLogInitBufferForRedo(XLogReaderState *record, uint8 block_id)
static void brin_xlog_desummarize_page(XLogReaderState *record)
#define BRIN_PAGETYPE_REGULAR
void brin_mask(char *pagedata, BlockNumber blkno)
bool PageIndexTupleOverwrite(Page page, OffsetNumber offnum, Item newtup, Size newsize)
BlockNumber pagesPerRange
#define BufferGetPage(buffer)
#define XLogRecGetInfo(decoder)
#define XLOG_BRIN_REVMAP_EXTEND
BlockNumber lastRevmapPage
#define XLOG_BRIN_INIT_PAGE
bool XLogRecGetBlockTag(XLogReaderState *record, uint8 block_id, RelFileNode *rnode, ForkNumber *forknum, BlockNumber *blknum)
#define BRIN_IS_META_PAGE(page)
char * XLogRecGetBlockData(XLogReaderState *record, uint8 block_id, Size *len)
void mask_page_lsn_and_checksum(Page page)
#define PageGetContents(page)
#define InvalidOffsetNumber
void PageIndexTupleDeleteNoCompact(Page page, OffsetNumber offnum)
static void brin_xlog_samepage_update(XLogReaderState *record)
XLogRedoAction XLogReadBufferForRedo(XLogReaderState *record, uint8 block_id, Buffer *buf)
PageHeaderData * PageHeader
#define Assert(condition)
#define BRIN_PAGETYPE_REVMAP
#define XLOG_BRIN_SAMEPAGE_UPDATE
#define BufferIsValid(bufnum)
static void brin_xlog_insert_update(XLogReaderState *record, xl_brin_insert *xlrec)
BlockNumber BufferGetBlockNumber(Buffer buffer)
#define ItemPointerSetInvalid(pointer)
void brin_redo(XLogReaderState *record)
BlockNumber pagesPerRange
void brinSetHeapBlockItemptr(Buffer buf, BlockNumber pagesPerRange, BlockNumber heapBlk, ItemPointerData tid)
#define PageSetLSN(page, lsn)
#define ItemPointerSet(pointer, blockNumber, offNum)
void brin_page_init(Page page, uint16 type)