PostgreSQL Source Code: src/include/access/visibilitymap.h Source File (original) (raw)

1

2

3

4

5

6

7

8

9

10

11

12

13

14#ifndef VISIBILITYMAP_H

15#define VISIBILITYMAP_H

16

22

23

24#define VM_ALL_VISIBLE(r, b, v) \

25 ((visibilitymap_get_status((r), (b), (v)) & VISIBILITYMAP_ALL_VISIBLE) != 0)

26#define VM_ALL_FROZEN(r, b, v) \

27 ((visibilitymap_get_status((r), (b), (v)) & VISIBILITYMAP_ALL_FROZEN) != 0)

28

44

45#endif

bool visibilitymap_pin_ok(BlockNumber heapBlk, Buffer vmbuf)

bool visibilitymap_clear(Relation rel, BlockNumber heapBlk, Buffer vmbuf, uint8 flags)

void visibilitymap_pin(Relation rel, BlockNumber heapBlk, Buffer *vmbuf)

uint8 visibilitymap_get_status(Relation rel, BlockNumber heapBlk, Buffer *vmbuf)

BlockNumber visibilitymap_prepare_truncate(Relation rel, BlockNumber nheapblocks)

void visibilitymap_count(Relation rel, BlockNumber *all_visible, BlockNumber *all_frozen)

uint8 visibilitymap_set(Relation rel, BlockNumber heapBlk, Buffer heapBuf, XLogRecPtr recptr, Buffer vmBuf, TransactionId cutoff_xid, uint8 flags)