PostgreSQL Source Code git master
Data Fields
TableAmRoutine Struct Reference

#include <tableam.h>

Data Fields

 
 
TableScanDesc(*  scan_begin )(Relation rel, Snapshot snapshot, int nkeys, ScanKeyData *key, ParallelTableScanDesc pscan, uint32 flags)
 
void(*  scan_end )(TableScanDesc scan)
 
void(*  scan_rescan )(TableScanDesc scan, ScanKeyData *key, bool set_params, bool allow_strat, bool allow_sync, bool allow_pagemode)
 
bool(*  scan_getnextslot )(TableScanDesc scan, ScanDirection direction, TupleTableSlot *slot)
 
void(*  scan_set_tidrange )(TableScanDesc scan, ItemPointer mintid, ItemPointer maxtid)
 
 
 
 
 
 
 
 
bool(*  index_fetch_tuple )(struct IndexFetchTableData *scan, ItemPointer tid, Snapshot snapshot, TupleTableSlot *slot, bool *call_again, bool *all_dead)
 
bool(*  tuple_fetch_row_version )(Relation rel, ItemPointer tid, Snapshot snapshot, TupleTableSlot *slot)
 
 
 
bool(*  tuple_satisfies_snapshot )(Relation rel, TupleTableSlot *slot, Snapshot snapshot)
 
 
void(*  tuple_insert )(Relation rel, TupleTableSlot *slot, CommandId cid, int options, BulkInsertStateData *bistate)
 
void(*  tuple_insert_speculative )(Relation rel, TupleTableSlot *slot, CommandId cid, int options, BulkInsertStateData *bistate, uint32 specToken)
 
void(*  tuple_complete_speculative )(Relation rel, TupleTableSlot *slot, uint32 specToken, bool succeeded)
 
void(*  multi_insert )(Relation rel, TupleTableSlot **slots, int nslots, CommandId cid, int options, BulkInsertStateData *bistate)
 
TM_Result(*  tuple_delete )(Relation rel, ItemPointer tid, CommandId cid, Snapshot snapshot, Snapshot crosscheck, bool wait, TM_FailureData *tmfd, bool changingPart)
 
TM_Result(*  tuple_update )(Relation rel, ItemPointer otid, TupleTableSlot *slot, CommandId cid, Snapshot snapshot, Snapshot crosscheck, bool wait, TM_FailureData *tmfd, LockTupleMode *lockmode, TU_UpdateIndexes *update_indexes)
 
 
void(*  finish_bulk_insert )(Relation rel, int options)
 
void(*  relation_set_new_filelocator )(Relation rel, const RelFileLocator *newrlocator, char persistence, TransactionId *freezeXid, MultiXactId *minmulti)
 
 
void(*  relation_copy_data )(Relation rel, const RelFileLocator *newrlocator)
 
void(*  relation_copy_for_cluster )(Relation OldTable, Relation NewTable, Relation OldIndex, bool use_sort, TransactionId OldestXmin, TransactionId *xid_cutoff, MultiXactId *multi_cutoff, double *num_tuples, double *tups_vacuumed, double *tups_recently_dead)
 
void(*  relation_vacuum )(Relation rel, const VacuumParams params, BufferAccessStrategy bstrategy)
 
 
bool(*  scan_analyze_next_tuple )(TableScanDesc scan, TransactionId OldestXmin, double *liverows, double *deadrows, TupleTableSlot *slot)
 
double(*  index_build_range_scan )(Relation table_rel, Relation index_rel, IndexInfo *index_info, bool allow_sync, bool anyvisible, bool progress, BlockNumber start_blockno, BlockNumber numblocks, IndexBuildCallback callback, void *callback_state, TableScanDesc scan)
 
void(*  index_validate_scan )(Relation table_rel, Relation index_rel, IndexInfo *index_info, Snapshot snapshot, ValidateIndexState *state)
 
uint64(*  relation_size )(Relation rel, ForkNumber forkNumber)
 
 
 
void(*  relation_fetch_toast_slice )(Relation toastrel, Oid valueid, int32 attrsize, int32 sliceoffset, int32 slicelength, struct varlena *result)
 
void(*  relation_estimate_size )(Relation rel, int32 *attr_widths, BlockNumber *pages, double *tuples, double *allvisfrac)
 
bool(*  scan_bitmap_next_tuple )(TableScanDesc scan, TupleTableSlot *slot, bool *recheck, uint64 *lossy_pages, uint64 *exact_pages)
 
 
 

Detailed Description

Definition at line 289 of file tableam.h.

Field Documentation

finish_bulk_insert

void(* TableAmRoutine::finish_bulk_insert) (Relation rel, int options)

Definition at line 577 of file tableam.h.

Referenced by table_finish_bulk_insert().

index_build_range_scan

double(* TableAmRoutine::index_build_range_scan) (Relation table_rel, Relation index_rel, IndexInfo *index_info, bool allow_sync, bool anyvisible, bool progress, BlockNumber start_blockno, BlockNumber numblocks, IndexBuildCallback callback, void *callback_state, TableScanDesc scan)

Definition at line 692 of file tableam.h.

Referenced by GetTableAmRoutine(), table_index_build_range_scan(), and table_index_build_scan().

index_delete_tuples

TransactionId(* TableAmRoutine::index_delete_tuples) (Relation rel, TM_IndexDeleteOp *delstate)

Definition at line 500 of file tableam.h.

Referenced by GetTableAmRoutine(), and table_index_delete_tuples().

index_fetch_begin

struct IndexFetchTableData *(* TableAmRoutine::index_fetch_begin) (Relation rel)

Definition at line 406 of file tableam.h.

Referenced by GetTableAmRoutine(), and table_index_fetch_begin().

index_fetch_end

void(* TableAmRoutine::index_fetch_end) (struct IndexFetchTableData *data)

Definition at line 434 of file tableam.h.

Referenced by GetTableAmRoutine(), and table_index_fetch_end().

index_fetch_reset

void(* TableAmRoutine::index_fetch_reset) (struct IndexFetchTableData *data)

Definition at line 429 of file tableam.h.

Referenced by GetTableAmRoutine(), and table_index_fetch_reset().

index_fetch_tuple

bool(* TableAmRoutine::index_fetch_tuple) (struct IndexFetchTableData *scan, ItemPointer tid, Snapshot snapshot, TupleTableSlot *slot, bool *call_again, bool *all_dead)

Definition at line 456 of file tableam.h.

Referenced by GetTableAmRoutine(), and table_index_fetch_tuple().

index_validate_scan

void(* TableAmRoutine::index_validate_scan) (Relation table_rel, Relation index_rel, IndexInfo *index_info, Snapshot snapshot, ValidateIndexState *state)

Definition at line 705 of file tableam.h.

Referenced by GetTableAmRoutine(), and table_index_validate_scan().

multi_insert

void(* TableAmRoutine::multi_insert) (Relation rel, TupleTableSlot **slots, int nslots, CommandId cid, int options, BulkInsertStateData *bistate)

Definition at line 529 of file tableam.h.

Referenced by GetTableAmRoutine(), and table_multi_insert().

parallelscan_estimate

Size(* TableAmRoutine::parallelscan_estimate) (Relation rel)

Definition at line 392 of file tableam.h.

Referenced by GetTableAmRoutine(), and table_parallelscan_estimate().

parallelscan_initialize

Size(* TableAmRoutine::parallelscan_initialize) (Relation rel, ParallelTableScanDesc pscan)

Definition at line 399 of file tableam.h.

Referenced by GetTableAmRoutine(), and table_parallelscan_initialize().

parallelscan_reinitialize

void(* TableAmRoutine::parallelscan_reinitialize) (Relation rel, ParallelTableScanDesc pscan)

Definition at line 406 of file tableam.h.

Referenced by GetTableAmRoutine(), and table_parallelscan_reinitialize().

relation_copy_data

void(* TableAmRoutine::relation_copy_data) (Relation rel, const RelFileLocator *newrlocator)

Definition at line 623 of file tableam.h.

Referenced by GetTableAmRoutine(), and table_relation_copy_data().

relation_copy_for_cluster

void(* TableAmRoutine::relation_copy_for_cluster) (Relation OldTable, Relation NewTable, Relation OldIndex, bool use_sort, TransactionId OldestXmin, TransactionId *xid_cutoff, MultiXactId *multi_cutoff, double *num_tuples, double *tups_vacuumed, double *tups_recently_dead)

Definition at line 627 of file tableam.h.

Referenced by GetTableAmRoutine(), and table_relation_copy_for_cluster().

relation_estimate_size

void(* TableAmRoutine::relation_estimate_size) (Relation rel, int32 *attr_widths, BlockNumber *pages, double *tuples, double *allvisfrac)

Definition at line 771 of file tableam.h.

Referenced by GetTableAmRoutine(), and table_relation_estimate_size().

relation_fetch_toast_slice

void(* TableAmRoutine::relation_fetch_toast_slice) (Relation toastrel, Oid valueid, int32 attrsize, int32 sliceoffset, int32 slicelength, struct varlena *result)

Definition at line 749 of file tableam.h.

Referenced by table_relation_fetch_toast_slice().

relation_needs_toast_table

bool(* TableAmRoutine::relation_needs_toast_table) (Relation rel)

Definition at line 735 of file tableam.h.

Referenced by GetTableAmRoutine(), and table_relation_needs_toast_table().

relation_nontransactional_truncate

void(* TableAmRoutine::relation_nontransactional_truncate) (Relation rel)

Definition at line 615 of file tableam.h.

Referenced by GetTableAmRoutine(), and table_relation_nontransactional_truncate().

relation_set_new_filelocator

void(* TableAmRoutine::relation_set_new_filelocator) (Relation rel, const RelFileLocator *newrlocator, char persistence, TransactionId *freezeXid, MultiXactId *minmulti)

Definition at line 601 of file tableam.h.

Referenced by GetTableAmRoutine(), and table_relation_set_new_filelocator().

relation_size

uint64(* TableAmRoutine::relation_size) (Relation rel, ForkNumber forkNumber)

Definition at line 725 of file tableam.h.

Referenced by GetTableAmRoutine(), and table_relation_size().

relation_toast_am

Oid(* TableAmRoutine::relation_toast_am) (Relation rel)

Definition at line 742 of file tableam.h.

Referenced by table_relation_toast_am().

relation_vacuum

void(* TableAmRoutine::relation_vacuum) (Relation rel, const VacuumParams params, BufferAccessStrategy bstrategy)

Definition at line 653 of file tableam.h.

Referenced by GetTableAmRoutine(), and table_relation_vacuum().

scan_analyze_next_block

bool(* TableAmRoutine::scan_analyze_next_block) (TableScanDesc scan, ReadStream *stream)

Definition at line 674 of file tableam.h.

Referenced by GetTableAmRoutine(), and table_scan_analyze_next_block().

scan_analyze_next_tuple

bool(* TableAmRoutine::scan_analyze_next_tuple) (TableScanDesc scan, TransactionId OldestXmin, double *liverows, double *deadrows, TupleTableSlot *slot)

Definition at line 685 of file tableam.h.

Referenced by GetTableAmRoutine(), and table_scan_analyze_next_tuple().

scan_begin

TableScanDesc(* TableAmRoutine::scan_begin) (Relation rel, Snapshot snapshot, int nkeys, ScanKeyData *key, ParallelTableScanDesc pscan, uint32 flags)

Definition at line 327 of file tableam.h.

Referenced by GetTableAmRoutine(), table_beginscan(), table_beginscan_analyze(), table_beginscan_bm(), table_beginscan_catalog(), table_beginscan_parallel(), table_beginscan_sampling(), table_beginscan_strat(), table_beginscan_tid(), and table_beginscan_tidrange().

scan_bitmap_next_tuple

bool(* TableAmRoutine::scan_bitmap_next_tuple) (TableScanDesc scan, TupleTableSlot *slot, bool *recheck, uint64 *lossy_pages, uint64 *exact_pages)

Definition at line 793 of file tableam.h.

Referenced by get_relation_info(), and table_scan_bitmap_next_tuple().

scan_end

void(* TableAmRoutine::scan_end) (TableScanDesc scan)

Definition at line 337 of file tableam.h.

Referenced by GetTableAmRoutine(), and table_endscan().

scan_getnextslot

bool(* TableAmRoutine::scan_getnextslot) (TableScanDesc scan, ScanDirection direction, TupleTableSlot *slot)

Definition at line 350 of file tableam.h.

Referenced by GetTableAmRoutine(), and table_scan_getnextslot().

scan_getnextslot_tidrange

bool(* TableAmRoutine::scan_getnextslot_tidrange) (TableScanDesc scan, ScanDirection direction, TupleTableSlot *slot)

Definition at line 379 of file tableam.h.

Referenced by get_relation_info(), and table_scan_getnextslot_tidrange().

scan_rescan

void(* TableAmRoutine::scan_rescan) (TableScanDesc scan, ScanKeyData *key, bool set_params, bool allow_strat, bool allow_sync, bool allow_pagemode)

Definition at line 343 of file tableam.h.

Referenced by GetTableAmRoutine(), table_rescan(), table_rescan_set_params(), and table_rescan_tidrange().

scan_sample_next_block

bool(* TableAmRoutine::scan_sample_next_block) (TableScanDesc scan, SampleScanState *scanstate)

Definition at line 824 of file tableam.h.

Referenced by GetTableAmRoutine(), and table_scan_sample_next_block().

scan_sample_next_tuple

bool(* TableAmRoutine::scan_sample_next_tuple) (TableScanDesc scan, SampleScanState *scanstate, TupleTableSlot *slot)

Definition at line 840 of file tableam.h.

Referenced by GetTableAmRoutine(), and table_scan_sample_next_tuple().

scan_set_tidrange

void(* TableAmRoutine::scan_set_tidrange) (TableScanDesc scan, ItemPointer mintid, ItemPointer maxtid)

Definition at line 371 of file tableam.h.

Referenced by get_relation_info(), table_beginscan_tidrange(), and table_rescan_tidrange().

slot_callbacks

const TupleTableSlotOps *(* TableAmRoutine::slot_callbacks) (Relation rel)

Definition at line 303 of file tableam.h.

Referenced by table_slot_callbacks().

tuple_complete_speculative

void(* TableAmRoutine::tuple_complete_speculative) (Relation rel, TupleTableSlot *slot, uint32 specToken, bool succeeded)

Definition at line 523 of file tableam.h.

Referenced by GetTableAmRoutine(), and table_tuple_complete_speculative().

tuple_delete

TM_Result(* TableAmRoutine::tuple_delete) (Relation rel, ItemPointer tid, CommandId cid, Snapshot snapshot, Snapshot crosscheck, bool wait, TM_FailureData *tmfd, bool changingPart)

Definition at line 533 of file tableam.h.

Referenced by GetTableAmRoutine(), and table_tuple_delete().

tuple_fetch_row_version

bool(* TableAmRoutine::tuple_fetch_row_version) (Relation rel, ItemPointer tid, Snapshot snapshot, TupleTableSlot *slot)

Definition at line 473 of file tableam.h.

Referenced by GetTableAmRoutine(), and table_tuple_fetch_row_version().

tuple_get_latest_tid

void(* TableAmRoutine::tuple_get_latest_tid) (TableScanDesc scan, ItemPointer tid)

Definition at line 488 of file tableam.h.

Referenced by GetTableAmRoutine(), and table_tuple_get_latest_tid().

tuple_insert

void(* TableAmRoutine::tuple_insert) (Relation rel, TupleTableSlot *slot, CommandId cid, int options, BulkInsertStateData *bistate)

Definition at line 510 of file tableam.h.

Referenced by GetTableAmRoutine(), and table_tuple_insert().

tuple_insert_speculative

void(* TableAmRoutine::tuple_insert_speculative) (Relation rel, TupleTableSlot *slot, CommandId cid, int options, BulkInsertStateData *bistate, uint32 specToken)

Definition at line 515 of file tableam.h.

Referenced by GetTableAmRoutine(), and table_tuple_insert_speculative().

tuple_lock

TM_Result(* TableAmRoutine::tuple_lock) (Relation rel, ItemPointer tid, Snapshot snapshot, TupleTableSlot *slot, CommandId cid, LockTupleMode mode, LockWaitPolicy wait_policy, uint8 flags, TM_FailureData *tmfd)

Definition at line 555 of file tableam.h.

Referenced by GetTableAmRoutine(), and table_tuple_lock().

tuple_satisfies_snapshot

bool(* TableAmRoutine::tuple_satisfies_snapshot) (Relation rel, TupleTableSlot *slot, Snapshot snapshot)

Definition at line 495 of file tableam.h.

Referenced by GetTableAmRoutine(), and table_tuple_satisfies_snapshot().

tuple_tid_valid

bool(* TableAmRoutine::tuple_tid_valid) (TableScanDesc scan, ItemPointer tid)

Definition at line 481 of file tableam.h.

Referenced by GetTableAmRoutine(), table_tuple_get_latest_tid(), and table_tuple_tid_valid().

tuple_update

TM_Result(* TableAmRoutine::tuple_update) (Relation rel, ItemPointer otid, TupleTableSlot *slot, CommandId cid, Snapshot snapshot, Snapshot crosscheck, bool wait, TM_FailureData *tmfd, LockTupleMode *lockmode, TU_UpdateIndexes *update_indexes)

Definition at line 543 of file tableam.h.

Referenced by GetTableAmRoutine(), and table_tuple_update().

type

NodeTag TableAmRoutine::type

Definition at line 292 of file tableam.h.


The documentation for this struct was generated from the following file:

AltStyle によって変換されたページ (->オリジナル) /