|
PostgreSQL Source Code git master
|

Go to the source code of this file.
Macros | |
| #define | MaxHeapTuplesPerPageBits 11 |
| #define | MaxBytesPerInteger 7 |
Functions | |
| static uint64 | itemptr_to_uint64 (const ItemPointerData *iptr) |
| static void | uint64_to_itemptr (uint64 val, ItemPointer iptr) |
| static void | encode_varbyte (uint64 val, unsigned char **ptr) |
| static uint64 | decode_varbyte (unsigned char **ptr) |
| GinPostingList * | ginCompressPostingList (const ItemPointerData *ipd, int nipd, int maxsize, int *nwritten) |
| ItemPointer | ginPostingListDecode (GinPostingList *plist, int *ndecoded_out) |
| ItemPointer | ginPostingListDecodeAllSegments (GinPostingList *segment, int len, int *ndecoded_out) |
| int | ginPostingListDecodeAllSegmentsToTbm (GinPostingList *ptr, int len, TIDBitmap *tbm) |
| ItemPointer | ginMergeItemPointers (ItemPointerData *a, uint32 na, ItemPointerData *b, uint32 nb, int *nmerged) |
| #define MaxBytesPerInteger 7 |
Definition at line 84 of file ginpostinglist.c.
| #define MaxHeapTuplesPerPageBits 11 |
Definition at line 81 of file ginpostinglist.c.
|
static |
Definition at line 133 of file ginpostinglist.c.
Referenced by ginPostingListDecodeAllSegments().
|
static |
Definition at line 115 of file ginpostinglist.c.
References val.
Referenced by ginCompressPostingList().
| GinPostingList * ginCompressPostingList | ( | const ItemPointerData * | ipd, |
| int | nipd, | ||
| int | maxsize, | ||
| int * | nwritten | ||
| ) |
Definition at line 197 of file ginpostinglist.c.
References Assert(), buf, GinPostingList::bytes, encode_varbyte(), GinPostingList::first, ginPostingListDecode(), if(), itemptr_to_uint64(), MaxBytesPerInteger, GinPostingList::nbytes, palloc(), pfree(), SHORTALIGN, SHORTALIGN_DOWN, SizeOfGinPostingList, and val.
Referenced by _gin_build_tuple(), addItemPointersToLeafTuple(), buildFreshLeafTuple(), createPostingTree(), ginRedoRecompress(), ginVacuumEntryPage(), ginVacuumPostingTreeLeaf(), leafRepackItems(), and test_itemptr_pair().
| ItemPointer ginMergeItemPointers | ( | ItemPointerData * | a, |
| uint32 | na, | ||
| ItemPointerData * | b, | ||
| uint32 | nb, | ||
| int * | nmerged | ||
| ) |
Definition at line 378 of file ginpostinglist.c.
References a, b, cmp(), ginCompareItemPointers(), and palloc().
Referenced by addItemPointersToLeafTuple(), addItemsToLeaf(), GinBufferStoreTuple(), ginRedoRecompress(), and leafRepackItems().
| ItemPointer ginPostingListDecode | ( | GinPostingList * | plist, |
| int * | ndecoded_out | ||
| ) |
Definition at line 284 of file ginpostinglist.c.
References ginPostingListDecodeAllSegments(), and SizeOfGinPostingList.
Referenced by addItemsToLeaf(), dataBeginPlaceToPageLeaf(), gin_leafpage_items(), ginCompressPostingList(), ginReadTuple(), ginReadTupleWithoutState(), ginRedoRecompress(), ginVacuumEntryPage(), ginVacuumPostingTreeLeaf(), leafRepackItems(), and test_itemptr_pair().
| ItemPointer ginPostingListDecodeAllSegments | ( | GinPostingList * | segment, |
| int | len, | ||
| int * | ndecoded_out | ||
| ) |
Definition at line 297 of file ginpostinglist.c.
References Assert(), GinPostingList::bytes, decode_varbyte(), GinPostingList::first, ginCompareItemPointers(), GinNextPostingListSegment, ItemPointerGetOffsetNumber(), itemptr_to_uint64(), len, GinPostingList::nbytes, OffsetNumberIsValid, palloc(), repalloc(), uint64_to_itemptr(), and val.
Referenced by _gin_parse_tuple_items(), GinDataLeafPageGetItems(), ginPostingListDecode(), and ginPostingListDecodeAllSegmentsToTbm().
| int ginPostingListDecodeAllSegmentsToTbm | ( | GinPostingList * | ptr, |
| int | len, | ||
| TIDBitmap * | tbm | ||
| ) |
Definition at line 358 of file ginpostinglist.c.
References ginPostingListDecodeAllSegments(), items, len, pfree(), and tbm_add_tuples().
Referenced by GinDataLeafPageGetItemsToTbm().
|
inlinestatic |
Definition at line 87 of file ginpostinglist.c.
References Assert(), GinItemPointerGetBlockNumber, GinItemPointerGetOffsetNumber, ItemPointerIsValid(), MaxHeapTuplesPerPageBits, and val.
Referenced by ginCompressPostingList(), and ginPostingListDecodeAllSegments().
|
inlinestatic |
Definition at line 102 of file ginpostinglist.c.
References Assert(), GinItemPointerSetBlockNumber, GinItemPointerSetOffsetNumber, ItemPointerIsValid(), MaxHeapTuplesPerPageBits, and val.
Referenced by ginPostingListDecodeAllSegments().