#include "postgres.h"
#include "common/blkreftable.h"
#include "common/hashfn.h"
#include "port/pg_crc32c.h"
#include "lib/simplehash.h"
Go to the source code of this file.
Definition at line 78 of file blkreftable.c.
Definition at line 79 of file blkreftable.c.
Definition at line 166 of file blkreftable.c.
Definition at line 81 of file blkreftable.c.
Definition at line 80 of file blkreftable.c.
Definition at line 134 of file blkreftable.c.
Definition at line 133 of file blkreftable.c.
Definition at line 123 of file blkreftable.c.
Definition at line 128 of file blkreftable.c.
Definition at line 126 of file blkreftable.c.
Definition at line 125 of file blkreftable.c.
Definition at line 124 of file blkreftable.c.
Definition at line 122 of file blkreftable.c.
Definition at line 129 of file blkreftable.c.
Definition at line 82 of file blkreftable.c.
Definition at line 1152 of file blkreftable.c.
References a, b, RelFileLocator::dbOid, BlockRefTableSerializedEntry::forknum, RelFileLocator::relNumber, BlockRefTableSerializedEntry::rlocator, and RelFileLocator::spcOid.
Referenced by WriteBlockRefTable().
Definition at line 369 of file blkreftable.c.
References Assert(), BLOCKS_PER_CHUNK, BLOCKS_PER_ENTRY, BlockRefTableEntry::chunk_data, BlockRefTableEntry::chunk_usage, i, MAX_ENTRIES_PER_CHUNK, and BlockRefTableEntry::nchunks.
Referenced by GetFileBackupMethod().
Definition at line 965 of file blkreftable.c.
References Assert(), BLOCKS_PER_CHUNK, BLOCKS_PER_ENTRY, BlockRefTableEntry::chunk_data, BlockRefTableEntry::chunk_size, BlockRefTableEntry::chunk_usage, i, INITIAL_ENTRIES_PER_CHUNK, j, Max, MAX_ENTRIES_PER_CHUNK, BlockRefTableEntry::nchunks, palloc(), palloc0(), pfree(), and repalloc().
Referenced by BlockRefTableMarkBlockModified().
Definition at line 894 of file blkreftable.c.
References Assert(), BLOCKS_PER_CHUNK, BLOCKS_PER_ENTRY, BlockRefTableEntry::chunk_data, BlockRefTableEntry::chunk_usage, i, if(), j, BlockRefTableEntry::limit_block, MAX_ENTRIES_PER_CHUNK, and BlockRefTableEntry::nchunks.
Referenced by BlockRefTableSetLimitBlock().
Definition at line 1292 of file blkreftable.c.
References BlockRefTableFlush(), BlockRefTableWrite(), BlockRefTableBuffer::crc, crc, and FIN_CRC32C.
Referenced by DestroyBlockRefTableWriter(), and WriteBlockRefTable().
Definition at line 1184 of file blkreftable.c.
References BlockRefTableBuffer::data, BlockRefTableBuffer::io_callback, BlockRefTableBuffer::io_callback_arg, and BlockRefTableBuffer::used.
Referenced by BlockRefTableFileTerminate().
Definition at line 1122 of file blkreftable.c.
References BlockRefTableEntry::chunk_data, BlockRefTableEntry::chunk_size, BlockRefTableEntry::chunk_usage, and pfree().
Definition at line 340 of file blkreftable.c.
References Assert(), BlockRefTable::hash, sort-test::key, and BlockRefTableEntry::limit_block.
Referenced by GetFileBackupMethod().
Definition at line 297 of file blkreftable.c.
References BlockRefTableEntryMarkBlockModified(), BlockRefTableEntry::chunk_data, BlockRefTableEntry::chunk_size, BlockRefTableEntry::chunk_usage, BlockRefTable::hash, InvalidBlockNumber, sort-test::key, BlockRefTableEntry::limit_block, BlockRefTable::mcxt, MemoryContextSwitchTo(), and BlockRefTableEntry::nchunks.
Referenced by PrepareForIncrementalBackup(), and SummarizeWAL().
Definition at line 1196 of file blkreftable.c.
References BlockRefTableReader::buffer, BUFSIZE, COMP_CRC32C, BlockRefTableBuffer::crc, BlockRefTableBuffer::cursor, BlockRefTableBuffer::data, data, BlockRefTableReader::error_callback, BlockRefTableReader::error_callback_arg, BlockRefTableReader::error_filename, BlockRefTableBuffer::io_callback, BlockRefTableBuffer::io_callback_arg, Min, and BlockRefTableBuffer::used.
Referenced by BlockRefTableReaderGetBlocks(), BlockRefTableReaderNextRelation(), and CreateBlockRefTableReader().
Definition at line 689 of file blkreftable.c.
References Assert(), BlockRefTableRead(), BLOCKS_PER_CHUNK, BLOCKS_PER_ENTRY, BlockRefTableReader::chunk_data, BlockRefTableReader::chunk_position, BlockRefTableReader::chunk_size, BlockRefTableReader::consumed_chunks, MAX_ENTRIES_PER_CHUNK, and BlockRefTableReader::total_chunks.
Referenced by dump_one_relation(), pg_wal_summary_contents(), and PrepareForIncrementalBackup().
Definition at line 613 of file blkreftable.c.
References Assert(), BlockRefTableRead(), BlockRefTableReader::buffer, BlockRefTableReader::chunk_size, BlockRefTableReader::consumed_chunks, BlockRefTableBuffer::crc, EQ_CRC32C, BlockRefTableReader::error_callback, BlockRefTableReader::error_callback_arg, BlockRefTableReader::error_filename, FIN_CRC32C, BlockRefTableSerializedEntry::forknum, BlockRefTableSerializedEntry::limit_block, BlockRefTableSerializedEntry::nchunks, palloc(), pfree(), BlockRefTableSerializedEntry::rlocator, and BlockRefTableReader::total_chunks.
Referenced by main(), pg_wal_summary_contents(), and PrepareForIncrementalBackup().
Definition at line 262 of file blkreftable.c.
References BlockRefTableEntrySetLimitBlock(), BlockRefTableEntry::chunk_data, BlockRefTableEntry::chunk_size, BlockRefTableEntry::chunk_usage, BlockRefTable::hash, sort-test::key, BlockRefTableEntry::limit_block, and BlockRefTableEntry::nchunks.
Referenced by PrepareForIncrementalBackup(), SummarizeDbaseRecord(), SummarizeSmgrRecord(), and SummarizeXactRecord().
Definition at line 1261 of file blkreftable.c.
References Assert(), BUFSIZE, COMP_CRC32C, BlockRefTableBuffer::crc, BlockRefTableBuffer::data, data, BlockRefTableBuffer::io_callback, BlockRefTableBuffer::io_callback_arg, and BlockRefTableBuffer::used.
Referenced by BlockRefTableFileTerminate(), BlockRefTableWriteEntry(), CreateBlockRefTableWriter(), and WriteBlockRefTable().
Definition at line 817 of file blkreftable.c.
References BlockRefTableWrite(), BlockRefTableWriter::buffer, BlockRefTableEntry::chunk_data, BlockRefTableEntry::chunk_usage, BlockRefTableKey::forknum, BlockRefTableSerializedEntry::forknum, j, BlockRefTableEntry::key, BlockRefTableEntry::limit_block, BlockRefTableSerializedEntry::limit_block, BlockRefTableEntry::nchunks, BlockRefTableSerializedEntry::nchunks, BlockRefTableKey::rlocator, and BlockRefTableSerializedEntry::rlocator.
Definition at line 875 of file blkreftable.c.
References BlockRefTableKey::forknum, InvalidBlockNumber, BlockRefTableEntry::key, BlockRefTableEntry::limit_block, palloc0(), and BlockRefTableKey::rlocator.
Definition at line 577 of file blkreftable.c.
References BLOCKREFTABLE_MAGIC, BlockRefTableRead(), BlockRefTableReader::buffer, BlockRefTableBuffer::crc, BlockRefTableReader::error_callback, BlockRefTableReader::error_callback_arg, BlockRefTableReader::error_filename, INIT_CRC32C, BlockRefTableBuffer::io_callback, BlockRefTableBuffer::io_callback_arg, and palloc0().
Referenced by main(), pg_wal_summary_contents(), and PrepareForIncrementalBackup().
Definition at line 790 of file blkreftable.c.
References BLOCKREFTABLE_MAGIC, BlockRefTableWrite(), BlockRefTableWriter::buffer, BlockRefTableBuffer::crc, INIT_CRC32C, BlockRefTableBuffer::io_callback, BlockRefTableBuffer::io_callback_arg, and palloc0().
Definition at line 235 of file blkreftable.c.
References CurrentMemoryContext, BlockRefTable::hash, BlockRefTable::mcxt, and palloc().
Definition at line 773 of file blkreftable.c.
References BlockRefTableReader::chunk_size, and pfree().
Referenced by main(), pg_wal_summary_contents(), and PrepareForIncrementalBackup().
Definition at line 855 of file blkreftable.c.
References BlockRefTableFileTerminate(), BlockRefTableWriter::buffer, and pfree().
Definition at line 474 of file blkreftable.c.
References Assert(), BLOCKREFTABLE_MAGIC, BlockRefTableComparator(), BlockRefTableFileTerminate(), BlockRefTableWrite(), BlockRefTableEntry::chunk_data, BlockRefTableEntry::chunk_usage, BlockRefTableBuffer::crc, BlockRefTableKey::forknum, BlockRefTableSerializedEntry::forknum, BlockRefTable::hash, i, INIT_CRC32C, BlockRefTableBuffer::io_callback, BlockRefTableBuffer::io_callback_arg, j, BlockRefTableEntry::key, sort-test::key, BlockRefTableEntry::limit_block, BlockRefTableSerializedEntry::limit_block, BlockRefTableEntry::nchunks, BlockRefTableSerializedEntry::nchunks, palloc(), qsort, BlockRefTableKey::rlocator, and BlockRefTableSerializedEntry::rlocator.
Referenced by SummarizeWAL().