Documentation ¶
Index ¶
Constants ¶
View Source
const ( HEAP_HASNULL = 0x0001 /* has null attribute(s) */ HEAP_HASVARWIDTH = 0x0002 /* has variable-width attribute(s) */ HEAP_HASEXTERNAL = 0x0004 /* has external stored attribute(s) */ HEAP_HASOID_OLD = 0x0008 /* has an object-id field */ HEAP_XMAX_KEYSHR_LOCK = 0x0010 /* xmax is a key-shared locker */ HEAP_COMBOCID = 0x0020 /* t_cid is a combo CID */ HEAP_XMAX_EXCL_LOCK = 0x0040 /* xmax is exclusive locker */ HEAP_XMAX_LOCK_ONLY = 0x0080 /* xmax, if valid, is only a locker */ HEAP_XMAX_SHR_LOCK = HEAP_XMAX_EXCL_LOCK | HEAP_XMAX_KEYSHR_LOCK HEAP_LOCK_MASK = HEAP_XMAX_SHR_LOCK | HEAP_XMAX_EXCL_LOCK | HEAP_XMAX_KEYSHR_LOCK HEAP_XMIN_COMMITTED = 0x0100 /* t_xmin committed */ HEAP_XMIN_INVALID = 0x0200 /* t_xmin invalid/aborted */ HEAP_XMIN_FROZEN = HEAP_XMIN_COMMITTED | HEAP_XMIN_INVALID HEAP_XMAX_COMMITTED = 0x0400 /* t_xmax committed */ HEAP_XMAX_INVALID = 0x0800 /* t_xmax invalid/aborted */ HEAP_XMAX_IS_MULTI = 0x1000 /* t_xmax is a MultiXactId */ HEAP_UPDATED = 0x2000 /* this is UPDATEd version of row */ HEAP_MOVED_OFF = 0x4000 /* moved to another place by pre-9.0 * VACUUM FULL; kept for binary * upgrade support */ HEAP_MOVED_IN = 0x8000 /* moved from another place by pre-9.0 * VACUUM FULL; kept for binary * upgrade support */ HEAP_MOVED = HEAP_MOVED_OFF | HEAP_MOVED_IN )
View Source
const ( HEAP_KEYS_UPDATED = 0x2000 /* tuple was updated and key cols modified, or tuple deleted */ HEAP_HOT_UPDATED = 0x4000 /* tuple was HOT-updated */ HEAP_ONLY_TUPLE = 0x8000 /* this is heap-only tuple */ )
View Source
const SizeOfHeapTupleHeaderData = 24
type = struct HeapTupleHeaderData { 0 | 12
union { 12 HeapTupleFields t_heap; 12 DatumTupleFields t_datum; total size (bytes): 12 } t_choice; //
/* 12 | 6 ItemPointerData t_ctid;
18 | 2
uint16 t_infomask2;
20 | 2
uint16 t_infomask;
22 | 1
uint8 t_hoff;
23 | 0
bits8 t_bits[];
XXX 1-byte padding total size (bytes): 24
Variables ¶
This section is empty.
Functions ¶
func DecodeHeap ¶
func DecodeHeap(d *decode.D, args format.Pg_Heap_In) any
func DecodeItemIds ¶
func DecodePageHeader ¶
Types ¶
type HeapPage ¶
type HeapPage struct { // PageHeaderData fields PdChecksum uint16 PdLower uint16 PdUpper uint16 PdSpecial uint16 PdPageSizeVersion uint16 // calculated bytes positions BytesPosBegin int64 // bytes pos of page's beginning BytesPosEnd int64 // bytes pos of page's ending BytesPosSpecial int64 // bytes pos of page's special // calculated bits positions PosItemsEnd int64 // bits pos of items end PosFreeSpaceEnd int64 // bits pos free space end // parsed items positions ItemIds []ItemID }
type PageSpecial ¶
type TransactionMapper ¶
type TransactionMapper struct { Heap *Heap Special *PageSpecial Tuple *TupleD }
Click to show internal directories.
Click to hide internal directories.