PostgreSQL Source Code  git master
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros
block.h File Reference
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  BlockIdData
 

Macros

#define InvalidBlockNumber   ((BlockNumber) 0xFFFFFFFF)
 
#define MaxBlockNumber   ((BlockNumber) 0xFFFFFFFE)
 
#define BlockNumberIsValid(blockNumber)   ((bool) ((BlockNumber) (blockNumber) != InvalidBlockNumber))
 
#define BlockIdIsValid(blockId)   ((bool) PointerIsValid(blockId))
 
#define BlockIdSet(blockId, blockNumber)
 
#define BlockIdCopy(toBlockId, fromBlockId)
 
#define BlockIdEquals(blockId1, blockId2)
 
#define BlockIdGetBlockNumber(blockId)
 

Typedefs

typedef uint32 BlockNumber
 
typedef struct BlockIdData BlockIdData
 
typedef BlockIdDataBlockId
 

Macro Definition Documentation

#define BlockIdCopy (   toBlockId,
  fromBlockId 
)
Value:
( \
AssertMacro(PointerIsValid(fromBlockId)), \
(toBlockId)->bi_hi = (fromBlockId)->bi_hi, \
(toBlockId)->bi_lo = (fromBlockId)->bi_lo \
)
#define AssertMacro(condition)
Definition: c.h:676
#define PointerIsValid(pointer)
Definition: c.h:526

Definition at line 95 of file block.h.

#define BlockIdEquals (   blockId1,
  blockId2 
)
Value:
((blockId1)->bi_hi == (blockId2)->bi_hi && \
(blockId1)->bi_lo == (blockId2)->bi_lo)

Definition at line 107 of file block.h.

#define BlockIdGetBlockNumber (   blockId)
Value:
( \
(BlockNumber) (((blockId)->bi_hi << 16) | ((uint16) (blockId)->bi_lo)) \
)
uint32 BlockNumber
Definition: block.h:31
#define AssertMacro(condition)
Definition: c.h:676
#define BlockIdIsValid(blockId)
Definition: block.h:77
unsigned short uint16
Definition: c.h:267

Definition at line 115 of file block.h.

Referenced by bt_page_items(), gin_desc(), ginRedoInsert(), ItemPointerCompare(), pgstat_heap(), tidout(), and tidsend().

#define BlockIdIsValid (   blockId)    ((bool) PointerIsValid(blockId))

Definition at line 77 of file block.h.

#define BlockIdSet (   blockId,
  blockNumber 
)
Value:
( \
(blockId)->bi_hi = (blockNumber) >> 16, \
(blockId)->bi_lo = (blockNumber) & 0xffff \
)
#define AssertMacro(condition)
Definition: c.h:676
#define PointerIsValid(pointer)
Definition: c.h:526

Definition at line 84 of file block.h.

Referenced by ginPlaceToPage().

#define InvalidBlockNumber   ((BlockNumber) 0xFFFFFFFF)

Definition at line 33 of file block.h.

Referenced by _bt_first(), _bt_getbuf(), _bt_mark_page_halfdead(), _bt_parallel_advance_array_keys(), _bt_steppage(), _bt_unlink_halfdead_page(), _hash_addovflpage(), _hash_alloc_buckets(), _hash_expandtable(), _hash_getbucketbuf_from_hashkey(), _hash_init_metabuffer(), _hash_initbitmapbuffer(), _hash_initbuf(), blinsert(), BloomNewBuffer(), brin_doupdate(), brin_getinsertbuffer(), brinGetTupleForHeapBlock(), brinRevmapExtend(), bt_check_every_level(), bt_check_level_from_leftmost(), bt_page_stats(), btinitparallelscan(), btparallelrescan(), btree_xlog_mark_page_halfdead(), btree_xlog_unlink_page(), copy_heap_data(), count_nondeletable_pages(), createPostingTree(), doPickSplit(), entryPreparePage(), fsm_extend(), fsm_readbuf(), fsm_search(), GetFreeIndexPage(), ginbulkdelete(), GinDataPageAddPostingItem(), ginFindLeafPage(), ginFindParents(), ginHeapTupleFastInsert(), GinInitMetabuffer(), GinInitPage(), ginInsertCleanup(), ginInsertValue(), GinNewBuffer(), ginPlaceToPage(), ginRedoInsert(), ginRedoInsertEntry(), ginRedoInsertListPage(), ginRedoUpdateMetapage(), ginScanToDelete(), ginUpdateStats(), ginVacuumPostingTreeLeaves(), gistAllocateNewPageBuffer(), gistbeginscan(), gistBufferingFindCorrectParent(), gistbufferinginserttuples(), gistFindCorrectParent(), gistFindPath(), gistGetNodeBuffer(), gistgettuple(), GISTInitBuffer(), gistkillitems(), gistLoadNodeBuffer(), gistNewBuffer(), gistplacetopage(), gistPopItupFromNodeBuffer(), gistProcessItup(), gistRedoPageSplitRecord(), gistRelocateBuildBuffersOnSplit(), gistScanPage(), hash_page_stats(), hash_xlog_add_ovfl_page(), hashbulkdelete(), heap_parallelscan_initialize(), heap_parallelscan_nextpage(), heapgettup(), heapgettup_pagemode(), IndexBuildHeapRangeScan(), IndexBuildHeapScan(), initscan(), intorel_startup(), makeSublist(), mdextend(), pg_buffercache_pages(), pg_truncate_visibility_map(), pushStackIfSplited(), RelationAddExtraBlocks(), RelationGetBufferForTuple(), RelationTruncate(), revmap_get_blkno(), revmap_get_buffer(), scanGetCandidate(), scanPendingInsert(), shiftList(), smgropen(), spgAddNodeAction(), spgdoinsert(), SpGistGetBuffer(), SpGistInitMetapage(), SpGistNewBuffer(), SpGistSetLastUsedPage(), spgMatchNodeAction(), spgRedoAddNode(), spgRedoPickSplit(), spgRedoVacuumLeaf(), SyncScanShmemInit(), system_nextsampleblock(), system_rows_nextsampleblock(), system_time_nextsampleblock(), tablesample_getnext(), tbm_add_tuples(), transientrel_startup(), vacuumLeafPage(), validate_index_heapscan(), vm_extend(), vm_readbuf(), and writeListPage().

#define MaxBlockNumber   ((BlockNumber) 0xFFFFFFFE)

Definition at line 35 of file block.h.

Referenced by pg_freespace(), pg_visibility(), and pg_visibility_map().

Typedef Documentation

Definition at line 59 of file block.h.

Definition at line 31 of file block.h.