vacuum (6)
VacPage
vacuumするページの情報を記録する。offsets_used以外の情報は、scan_heapで設定される。freeにはvacuumでdeadタプルを削除してページの断片化を解消した後の空き領域(pd_upperとpg_lowerの間のスペース)の大きさが設定される。offsets配列にはdeadタプルのOffsetNumberが登録される。offsets_freeにoffsets配列に登録されたdeadタプルの数が設定される。
typedef struct VacPageData { BlockNumber blkno; /* BlockNumber of this Page */ Size free; /* FreeSpace on this Page */ uint16 offsets_used; /* Number of OffNums used by vacuum */ uint16 offsets_free; /* Number of OffNums free or to be free */ OffsetNumber offsets[1]; /* Array of free OffNums */ } VacPageData; typedef VacPageData *VacPage;