|
PostgreSQL Source Code git master
|
#include "access/relscan.h"#include "access/sdir.h"#include "access/xact.h"#include "commands/vacuum.h"#include "executor/tuptable.h"#include "storage/read_stream.h"#include "utils/rel.h"#include "utils/snapshot.h"

Go to the source code of this file.
Data Structures | |
| struct | TM_FailureData |
| struct | TM_IndexDelete |
| struct | TM_IndexStatus |
| struct | TM_IndexDeleteOp |
| struct | TableAmRoutine |
Macros | |
| #define | DEFAULT_TABLE_ACCESS_METHOD "heap" |
| #define | TABLE_INSERT_SKIP_FSM 0x0002 |
| #define | TABLE_INSERT_FROZEN 0x0004 |
| #define | TABLE_INSERT_NO_LOGICAL 0x0008 |
| #define | TUPLE_LOCK_FLAG_LOCK_UPDATE_IN_PROGRESS (1 << 0) |
| #define | TUPLE_LOCK_FLAG_FIND_LAST_VERSION (1 << 1) |
Enumerations | |
| enum | ScanOptions { SO_TYPE_SEQSCAN = 1 << 0 , SO_TYPE_BITMAPSCAN = 1 << 1 , SO_TYPE_SAMPLESCAN = 1 << 2 , SO_TYPE_TIDSCAN = 1 << 3 , SO_TYPE_TIDRANGESCAN = 1 << 4 , SO_TYPE_ANALYZE = 1 << 5 , SO_ALLOW_STRAT = 1 << 6 , SO_ALLOW_SYNC = 1 << 7 , SO_ALLOW_PAGEMODE = 1 << 8 , SO_TEMP_SNAPSHOT = 1 << 9 } |
| enum | TM_Result { TM_Ok , TM_Invisible , TM_SelfModified , TM_Updated , TM_Deleted , TM_BeingModified , TM_WouldBlock } |
| enum | TU_UpdateIndexes { TU_None , TU_All , TU_Summarizing } |
Variables | |
| PGDLLIMPORT char * | default_table_access_method |
| PGDLLIMPORT bool | synchronize_seqscans |
| Enumerator | |
|---|---|
| SO_TYPE_SEQSCAN | |
| SO_TYPE_BITMAPSCAN | |
| SO_TYPE_SAMPLESCAN | |
| SO_TYPE_TIDSCAN | |
| SO_TYPE_TIDRANGESCAN | |
| SO_TYPE_ANALYZE | |
| SO_ALLOW_STRAT | |
| SO_ALLOW_SYNC | |
| SO_ALLOW_PAGEMODE | |
| SO_TEMP_SNAPSHOT | |
Definition at line 46 of file tableam.h.
| Enumerator | |
|---|---|
| TM_Ok | |
| TM_Invisible | |
| TM_SelfModified | |
| TM_Updated | |
| TM_Deleted | |
| TM_BeingModified | |
| TM_WouldBlock | |
Definition at line 72 of file tableam.h.
| Enumerator | |
|---|---|
| TU_None | |
| TU_All | |
| TU_Summarizing | |
Definition at line 110 of file tableam.h.
|
extern |
Definition at line 2690 of file heapam_handler.c.
References heapam_methods.
Referenced by formrdesc(), and heap_getnext().
|
extern |
Definition at line 27 of file tableamapi.c.
References Assert, DatumGetPointer(), elog, ERROR, fb(), TableAmRoutine::index_build_range_scan, TableAmRoutine::index_delete_tuples, TableAmRoutine::index_fetch_begin, TableAmRoutine::index_fetch_end, TableAmRoutine::index_fetch_reset, TableAmRoutine::index_fetch_tuple, TableAmRoutine::index_validate_scan, IsA, TableAmRoutine::multi_insert, OidFunctionCall0, TableAmRoutine::parallelscan_estimate, TableAmRoutine::parallelscan_initialize, TableAmRoutine::parallelscan_reinitialize, TableAmRoutine::relation_copy_data, TableAmRoutine::relation_copy_for_cluster, TableAmRoutine::relation_estimate_size, TableAmRoutine::relation_needs_toast_table, TableAmRoutine::relation_nontransactional_truncate, TableAmRoutine::relation_set_new_filelocator, TableAmRoutine::relation_size, TableAmRoutine::relation_vacuum, TableAmRoutine::scan_analyze_next_block, TableAmRoutine::scan_analyze_next_tuple, TableAmRoutine::scan_begin, TableAmRoutine::scan_end, TableAmRoutine::scan_getnextslot, TableAmRoutine::scan_rescan, TableAmRoutine::scan_sample_next_block, TableAmRoutine::scan_sample_next_tuple, TableAmRoutine::tuple_complete_speculative, TableAmRoutine::tuple_delete, TableAmRoutine::tuple_fetch_row_version, TableAmRoutine::tuple_get_latest_tid, TableAmRoutine::tuple_insert, TableAmRoutine::tuple_insert_speculative, TableAmRoutine::tuple_lock, TableAmRoutine::tuple_satisfies_snapshot, TableAmRoutine::tuple_tid_valid, and TableAmRoutine::tuple_update.
Referenced by InitTableAmRoutine().
|
extern |
Definition at line 322 of file tableam.c.
References elog, ERROR, GetCurrentCommandId(), InvalidSnapshot, table_tuple_delete(), TM_Deleted, TM_Ok, TM_SelfModified, and TM_Updated.
Referenced by ExecSimpleRelationDelete().
|
extern |
Definition at line 308 of file tableam.c.
References fb(), GetCurrentCommandId(), and table_tuple_insert().
Referenced by ExecSimpleRelationInsert().
|
extern |
Definition at line 367 of file tableam.c.
References elog, ERROR, fb(), GetCurrentCommandId(), InvalidSnapshot, table_tuple_update(), TM_Deleted, TM_Ok, TM_SelfModified, and TM_Updated.
Referenced by ExecSimpleRelationUpdate().
|
inlinestatic |
Definition at line 876 of file tableam.h.
References fb(), RelationData::rd_tableam, TableAmRoutine::scan_begin, SO_ALLOW_PAGEMODE, SO_ALLOW_STRAT, SO_ALLOW_SYNC, and SO_TYPE_SEQSCAN.
Referenced by ATRewriteTable(), check_default_partition_contents(), CopyRelationTo(), heapam_relation_copy_for_cluster(), MergePartitionsMoveRows(), pgrowlocks(), RelationFindDeletedTupleInfoSeq(), RelationFindReplTupleSeq(), SeqNext(), SplitPartitionMoveRows(), validateDomainCheckConstraint(), validateDomainNotNullConstraint(), and validateForeignKeyConstraint().
|
inlinestatic |
Definition at line 974 of file tableam.h.
References fb(), RelationData::rd_tableam, TableAmRoutine::scan_begin, and SO_TYPE_ANALYZE.
Referenced by acquire_sample_rows().
|
inlinestatic |
Definition at line 921 of file tableam.h.
References fb(), RelationData::rd_tableam, TableAmRoutine::scan_begin, SO_ALLOW_PAGEMODE, and SO_TYPE_BITMAPSCAN.
Referenced by BitmapTableScanSetup().
|
extern |
Definition at line 113 of file tableam.c.
References fb(), GetCatalogSnapshot(), RelationData::rd_tableam, RegisterSnapshot(), RelationGetRelid, TableAmRoutine::scan_begin, SO_ALLOW_PAGEMODE, SO_ALLOW_STRAT, SO_ALLOW_SYNC, SO_TEMP_SNAPSHOT, and SO_TYPE_SEQSCAN.
Referenced by AlterTableMoveAll(), AlterTableSpaceOptions(), check_db_file_conflict(), CreateDatabaseUsingFileCopy(), do_autovacuum(), DropSetting(), DropTableSpace(), find_typed_table_dependencies(), get_all_vacuum_rels(), get_database_list(), get_subscription_list(), get_tables_to_cluster(), get_tablespace_name(), get_tablespace_oid(), GetAllPublicationRelations(), getRelationsInNamespace(), GetSchemaPublicationRelations(), objectsInSchemaToOids(), populate_typ_list(), ReindexMultipleTables(), remove_dbtablespaces(), RemoveSubscriptionRel(), RenameTableSpace(), ThereIsAtLeastOneRole(), and vac_truncate_clog().
|
extern |
Definition at line 166 of file tableam.c.
References Assert, fb(), RelationData::rd_locator, RelationData::rd_tableam, RegisterSnapshot(), RelFileLocatorEquals, RestoreSnapshot(), TableAmRoutine::scan_begin, SnapshotAny, SO_ALLOW_PAGEMODE, SO_ALLOW_STRAT, SO_ALLOW_SYNC, SO_TEMP_SNAPSHOT, and SO_TYPE_SEQSCAN.
Referenced by _brin_parallel_scan_and_build(), _bt_parallel_scan_and_sort(), _gin_parallel_scan_and_build(), ExecSeqScanInitializeDSM(), and ExecSeqScanInitializeWorker().
|
extern |
Definition at line 192 of file tableam.c.
References Assert, fb(), RelationData::rd_locator, RelationData::rd_tableam, RegisterSnapshot(), RelFileLocatorEquals, RestoreSnapshot(), TableAmRoutine::scan_begin, SnapshotAny, SO_ALLOW_PAGEMODE, SO_TEMP_SNAPSHOT, and SO_TYPE_TIDRANGESCAN.
Referenced by ExecTidRangeScanInitializeDSM(), and ExecTidRangeScanInitializeWorker().
|
inlinestatic |
Definition at line 938 of file tableam.h.
References fb(), RelationData::rd_tableam, TableAmRoutine::scan_begin, SO_ALLOW_PAGEMODE, SO_ALLOW_STRAT, SO_ALLOW_SYNC, and SO_TYPE_SAMPLESCAN.
Referenced by tablesample_init().
|
inlinestatic |
Definition at line 900 of file tableam.h.
References fb(), RelationData::rd_tableam, TableAmRoutine::scan_begin, SO_ALLOW_PAGEMODE, SO_ALLOW_STRAT, SO_ALLOW_SYNC, and SO_TYPE_SEQSCAN.
Referenced by bt_check_every_level(), heapam_index_build_range_scan(), heapam_index_validate_scan(), IndexCheckExclusion(), pgstat_heap(), and systable_beginscan().
|
inlinestatic |
Definition at line 961 of file tableam.h.
References fb(), RelationData::rd_tableam, TableAmRoutine::scan_begin, and SO_TYPE_TIDSCAN.
Referenced by currtid_internal(), and TidListEval().
|
inlinestatic |
Definition at line 1049 of file tableam.h.
References fb(), RelationData::rd_tableam, TableScanDescData::rs_rd, TableAmRoutine::scan_begin, TableAmRoutine::scan_set_tidrange, SO_ALLOW_PAGEMODE, and SO_TYPE_TIDRANGESCAN.
Referenced by TidRangeNext().
|
extern |
Definition at line 420 of file tableam.c.
References ParallelBlockTableScanDescData::base, fb(), InvalidBlockNumber, NBuffers, pg_atomic_init_u64(), ParallelTableScanDescData::phs_locator, RelationData::rd_locator, RelationGetNumberOfBlocks, RelationUsesLocalBuffers, SpinLockInit, and synchronize_seqscans.
|
extern |
Definition at line 554 of file tableam.c.
References fb(), InvalidBlockNumber, PARALLEL_SEQSCAN_RAMPDOWN_CHUNKS, pg_atomic_fetch_add_u64(), and ss_report_location().
Referenced by heap_scan_stream_read_next_parallel().
|
extern |
Definition at line 439 of file tableam.c.
References fb(), and pg_atomic_write_u64().
|
extern |
Definition at line 459 of file tableam.c.
References fb(), InvalidBlockNumber, Max, MaxBlockNumber, Min, PARALLEL_SEQSCAN_MAX_CHUNK_SIZE, PARALLEL_SEQSCAN_NCHUNKS, pg_nextpower2_32(), SpinLockAcquire, SpinLockRelease, ss_get_location(), and StaticAssertDecl.
Referenced by heap_scan_stream_read_next_parallel().
|
extern |
Definition at line 724 of file tableam.c.
References clamp_row_est(), fb(), fillfactor, get_rel_data_width(), HEAP_DEFAULT_FILLFACTOR, RelationData::rd_rel, RelationGetFillFactor, and RelationGetNumberOfBlocks.
Referenced by heapam_estimate_rel_size().
|
extern |
Definition at line 687 of file tableam.c.
References fb(), i, InvalidForkNumber, MAX_FORKNUM, RelationGetSmgr(), and smgrnblocks().
|
inlinestatic |
Definition at line 985 of file tableam.h.
References RelationData::rd_tableam, TableScanDescData::rs_rd, and TableAmRoutine::scan_end.
Referenced by acquire_sample_rows(), AlterTableMoveAll(), AlterTableSpaceOptions(), ATRewriteTable(), check_db_file_conflict(), check_default_partition_contents(), CopyRelationTo(), CreateDatabaseUsingFileCopy(), currtid_internal(), do_autovacuum(), DropSetting(), DropTableSpace(), ExecEndBitmapHeapScan(), ExecEndSampleScan(), ExecEndSeqScan(), ExecEndTidRangeScan(), ExecEndTidScan(), find_typed_table_dependencies(), get_all_vacuum_rels(), get_database_list(), get_subscription_list(), get_tables_to_cluster(), get_tablespace_name(), get_tablespace_oid(), GetAllPublicationRelations(), getRelationsInNamespace(), GetSchemaPublicationRelations(), heapam_index_build_range_scan(), heapam_index_validate_scan(), heapam_relation_copy_for_cluster(), IndexCheckExclusion(), MergePartitionsMoveRows(), objectsInSchemaToOids(), pgrowlocks(), pgstat_heap(), populate_typ_list(), ReindexMultipleTables(), RelationFindDeletedTupleInfoSeq(), RelationFindReplTupleSeq(), remove_dbtablespaces(), RemoveSubscriptionRel(), RenameTableSpace(), SplitPartitionMoveRows(), systable_endscan(), ThereIsAtLeastOneRole(), vac_truncate_clog(), validateDomainCheckConstraint(), validateDomainNotNullConstraint(), and validateForeignKeyConstraint().
Definition at line 1574 of file tableam.h.
References TableAmRoutine::finish_bulk_insert, and RelationData::rd_tableam.
Referenced by ATRewriteTable(), CopyMultiInsertBufferCleanup(), deleteSplitPartitionContext(), intorel_shutdown(), MergePartitionsMoveRows(), and transientrel_shutdown().
|
inlinestatic |
Definition at line 1787 of file tableam.h.
References callback(), fb(), and progress.
Referenced by summarize_range().
|
inlinestatic |
Definition at line 1754 of file tableam.h.
References callback(), fb(), InvalidBlockNumber, and progress.
Referenced by _brin_parallel_scan_and_build(), _bt_parallel_scan_and_sort(), _bt_spools_heapscan(), _gin_parallel_scan_and_build(), blbuild(), brinbuild(), bt_check_every_level(), ginbuild(), gistbuild(), hashbuild(), and spgbuild().
|
inlinestatic |
Definition at line 1331 of file tableam.h.
References fb(), TableAmRoutine::index_delete_tuples, and RelationData::rd_tableam.
Referenced by _bt_delitems_delete_check(), and index_compute_xid_horizon_for_tuples().
|
inlinestatic |
Definition at line 1167 of file tableam.h.
References TableAmRoutine::index_fetch_begin, and RelationData::rd_tableam.
Referenced by index_beginscan(), index_beginscan_parallel(), table_index_fetch_tuple_check(), and unique_key_recheck().
|
inlinestatic |
Definition at line 1186 of file tableam.h.
References TableAmRoutine::index_fetch_end, RelationData::rd_tableam, and IndexFetchTableData::rel.
Referenced by index_endscan(), table_index_fetch_tuple_check(), and unique_key_recheck().
|
inlinestatic |
Definition at line 1177 of file tableam.h.
References TableAmRoutine::index_fetch_reset, RelationData::rd_tableam, and IndexFetchTableData::rel.
Referenced by index_getnext_tid(), index_parallelrescan(), index_rescan(), and index_restrpos().
|
inlinestatic |
Definition at line 1216 of file tableam.h.
References bsysscan, CheckXidAlive, elog, ERROR, fb(), TableAmRoutine::index_fetch_tuple, RelationData::rd_tableam, IndexFetchTableData::rel, TransactionIdIsValid, and unlikely.
Referenced by index_fetch_heap(), table_index_fetch_tuple_check(), and unique_key_recheck().
|
extern |
Definition at line 240 of file tableam.c.
References ExecDropSingleTupleTableSlot(), fb(), table_index_fetch_begin(), table_index_fetch_end(), table_index_fetch_tuple(), and table_slot_create().
Referenced by _bt_check_unique().
|
inlinestatic |
Definition at line 1818 of file tableam.h.
References fb().
Referenced by validate_index().
|
inlinestatic |
Definition at line 1432 of file tableam.h.
References fb(), TableAmRoutine::multi_insert, and RelationData::rd_tableam.
Referenced by CopyMultiInsertBufferFlush().
Definition at line 131 of file tableam.c.
References add_size(), Assert, EstimateSnapshotSpace(), fb(), IsMVCCSnapshot, TableAmRoutine::parallelscan_estimate, RelationData::rd_tableam, and SnapshotAny.
Referenced by _brin_parallel_estimate_shared(), _bt_parallel_estimate_shared(), _gin_parallel_estimate_shared(), ExecSeqScanEstimate(), and ExecTidRangeScanEstimate().
|
extern |
Definition at line 146 of file tableam.c.
References Assert, fb(), IsMVCCSnapshot, TableAmRoutine::parallelscan_initialize, RelationData::rd_tableam, SerializeSnapshot(), and SnapshotAny.
Referenced by _brin_begin_parallel(), _bt_begin_parallel(), _gin_begin_parallel(), ExecSeqScanInitializeDSM(), and ExecTidRangeScanInitializeDSM().
|
inlinestatic |
Definition at line 1149 of file tableam.h.
References fb(), TableAmRoutine::parallelscan_reinitialize, and RelationData::rd_tableam.
Referenced by ExecSeqScanReInitializeDSM(), and ExecTidRangeScanReInitializeDSM().
|
inlinestatic |
Definition at line 1630 of file tableam.h.
References fb(), RelationData::rd_tableam, and TableAmRoutine::relation_copy_data.
Referenced by ATExecSetTableSpace().
|
inlinestatic |
Definition at line 1657 of file tableam.h.
References fb().
Referenced by copy_table_data().
|
inlinestatic |
Definition at line 1916 of file tableam.h.
References fb(), RelationData::rd_tableam, and TableAmRoutine::relation_estimate_size.
Referenced by estimate_rel_size().
|
inlinestatic |
Definition at line 1895 of file tableam.h.
References fb().
Referenced by toast_fetch_datum(), and toast_fetch_datum_slice().
Definition at line 1856 of file tableam.h.
References RelationData::rd_tableam, and TableAmRoutine::relation_needs_toast_table.
Referenced by needs_toast_table().
Definition at line 1618 of file tableam.h.
References RelationData::rd_tableam, and TableAmRoutine::relation_nontransactional_truncate.
Referenced by heap_truncate_one_rel().
|
inlinestatic |
Definition at line 1600 of file tableam.h.
References fb(), RelationData::rd_tableam, and TableAmRoutine::relation_set_new_filelocator.
Referenced by heap_create(), and RelationSetNewRelfilenumber().
|
inlinestatic |
Definition at line 1847 of file tableam.h.
References fb(), RelationData::rd_tableam, and TableAmRoutine::relation_size.
Referenced by RelationGetNumberOfBlocksInFork().
Definition at line 1866 of file tableam.h.
References RelationData::rd_tableam, and TableAmRoutine::relation_toast_am.
Referenced by create_toast_table().
|
inlinestatic |
Definition at line 1686 of file tableam.h.
References RelationData::rd_tableam, and TableAmRoutine::relation_vacuum.
Referenced by vacuum_rel().
|
inlinestatic |
Definition at line 994 of file tableam.h.
References RelationData::rd_tableam, TableScanDescData::rs_rd, and TableAmRoutine::scan_rescan.
Referenced by ExecReScanBitmapHeapScan(), ExecReScanSeqScan(), ExecReScanTidScan(), RelationFindDeletedTupleInfoSeq(), and RelationFindReplTupleSeq().
|
inlinestatic |
Definition at line 1008 of file tableam.h.
References fb(), RelationData::rd_tableam, TableScanDescData::rs_rd, and TableAmRoutine::scan_rescan.
Referenced by tablesample_init().
|
inlinestatic |
Definition at line 1070 of file tableam.h.
References Assert, fb(), and SO_TYPE_TIDRANGESCAN.
Referenced by TidRangeNext().
|
inlinestatic |
Definition at line 1701 of file tableam.h.
References RelationData::rd_tableam, TableScanDescData::rs_rd, and TableAmRoutine::scan_analyze_next_block.
Referenced by acquire_sample_rows().
|
inlinestatic |
Definition at line 1717 of file tableam.h.
References fb(), RelationData::rd_tableam, TableScanDescData::rs_rd, and TableAmRoutine::scan_analyze_next_tuple.
Referenced by acquire_sample_rows().
|
inlinestatic |
Definition at line 1944 of file tableam.h.
References bsysscan, CheckXidAlive, elog, ERROR, RelationData::rd_tableam, TableScanDescData::rs_rd, TableAmRoutine::scan_bitmap_next_tuple, TransactionIdIsValid, and unlikely.
Referenced by BitmapHeapNext().
|
inlinestatic |
Definition at line 1020 of file tableam.h.
References Assert, BackwardScanDirection, bsysscan, CheckXidAlive, elog, ERROR, fb(), ForwardScanDirection, RelationGetRelid, TransactionIdIsValid, TupleTableSlot::tts_tableOid, and unlikely.
Referenced by ATRewriteTable(), check_default_partition_contents(), CopyRelationTo(), heapam_relation_copy_for_cluster(), IndexCheckExclusion(), MergePartitionsMoveRows(), RelationFindDeletedTupleInfoSeq(), RelationFindReplTupleSeq(), SeqNext(), SplitPartitionMoveRows(), systable_getnext(), validateDomainCheckConstraint(), validateDomainNotNullConstraint(), and validateForeignKeyConstraint().
|
inlinestatic |
Definition at line 1086 of file tableam.h.
References Assert, BackwardScanDirection, fb(), ForwardScanDirection, and SO_TYPE_TIDRANGESCAN.
Referenced by TidRangeNext().
|
inlinestatic |
Definition at line 1975 of file tableam.h.
References bsysscan, CheckXidAlive, elog, ERROR, fb(), RelationData::rd_tableam, TableScanDescData::rs_rd, TableAmRoutine::scan_sample_next_block, TransactionIdIsValid, and unlikely.
Referenced by tablesample_getnext().
|
inlinestatic |
Definition at line 1997 of file tableam.h.
References bsysscan, CheckXidAlive, elog, ERROR, fb(), RelationData::rd_tableam, TableScanDescData::rs_rd, TableAmRoutine::scan_sample_next_tuple, TransactionIdIsValid, and unlikely.
Referenced by tablesample_getnext().
|
extern |
Definition at line 59 of file tableam.c.
References Assert, fb(), RelationData::rd_rel, RelationData::rd_tableam, TableAmRoutine::slot_callbacks, TTSOpsHeapTuple, and TTSOpsVirtual.
Referenced by ATRewriteTable(), ExecGetAllNullSlot(), ExecGetReturningSlot(), ExecGetTriggerNewSlot(), ExecGetTriggerOldSlot(), ExecInitBitmapHeapScan(), ExecInitIndexOnlyScan(), ExecInitIndexScan(), ExecInitSampleScan(), ExecInitSeqScan(), ExecInitTidRangeScan(), ExecInitTidScan(), and table_slot_create().
|
extern |
Definition at line 92 of file tableam.c.
References fb(), lappend(), MakeSingleTupleTableSlot(), RelationGetDescr, and table_slot_callbacks().
Referenced by acquire_sample_rows(), apply_handle_tuple_routing(), apply_handle_update_internal(), build_index_value_desc(), check_default_partition_contents(), check_exclusion_or_unique_constraint(), CopyFrom(), CopyMultiInsertInfoNextFreeSlot(), CopyRelationTo(), createSplitPartitionContext(), EvalPlanQualSlot(), ExecCrossPartitionUpdate(), ExecInitInsertProjection(), ExecInitMerge(), ExecInitMergeTupleSlots(), ExecInitModifyTable(), ExecInitPartitionInfo(), ExecInitRoutingInfo(), ExecInitUpdateProjection(), FindConflictTuple(), FindReplTupleInLocalRel(), get_actual_variable_range(), heap_entry_is_visible(), heapam_index_build_range_scan(), heapam_relation_copy_for_cluster(), IndexCheckExclusion(), MergePartitionsMoveRows(), RelationFindDeletedTupleInfoByIndex(), RelationFindDeletedTupleInfoSeq(), RelationFindReplTupleSeq(), SplitPartitionMoveRows(), systable_beginscan(), systable_beginscan_ordered(), table_index_fetch_tuple_check(), unique_key_recheck(), validateDomainCheckConstraint(), validateDomainNotNullConstraint(), and validateForeignKeyConstraint().
|
inlinestatic |
Definition at line 1410 of file tableam.h.
References fb(), RelationData::rd_tableam, and TableAmRoutine::tuple_complete_speculative.
Referenced by ExecInsert().
|
inlinestatic |
Definition at line 1467 of file tableam.h.
References fb(), RelationData::rd_tableam, and TableAmRoutine::tuple_delete.
Referenced by ExecDeleteAct(), and simple_table_tuple_delete().
|
inlinestatic |
Definition at line 1263 of file tableam.h.
References bsysscan, CheckXidAlive, elog, ERROR, RelationData::rd_tableam, TransactionIdIsValid, TableAmRoutine::tuple_fetch_row_version, and unlikely.
Referenced by AfterTriggerExecute(), EvalPlanQualFetchRowMark(), ExecCheckTIDVisible(), ExecCrossPartitionUpdate(), ExecDelete(), ExecMergeMatched(), ExecModifyTable(), ExecUpdate(), GetTupleForTrigger(), heap_entry_is_visible(), and TidNext().
|
extern |
Definition at line 267 of file tableam.c.
References bsysscan, CheckXidAlive, elog, ereport, errcode(), errmsg(), ERROR, fb(), ItemPointerGetBlockNumberNoCheck(), ItemPointerGetOffsetNumberNoCheck(), RelationData::rd_tableam, RelationGetRelationName, TableScanDescData::rs_rd, TransactionIdIsValid, TableAmRoutine::tuple_get_latest_tid, TableAmRoutine::tuple_tid_valid, and unlikely.
Referenced by currtid_internal(), and TidNext().
|
inlinestatic |
Definition at line 1377 of file tableam.h.
References fb(), RelationData::rd_tableam, and TableAmRoutine::tuple_insert.
Referenced by ATRewriteTable(), CopyFrom(), ExecInsert(), intorel_receive(), MergePartitionsMoveRows(), simple_table_tuple_insert(), SplitPartitionMoveRows(), and transientrel_receive().
|
inlinestatic |
Definition at line 1396 of file tableam.h.
References fb(), RelationData::rd_tableam, and TableAmRoutine::tuple_insert_speculative.
Referenced by ExecInsert().
|
inlinestatic |
Definition at line 1559 of file tableam.h.
References fb(), mode, RelationData::rd_tableam, and TableAmRoutine::tuple_lock.
Referenced by ExecDelete(), ExecLockRows(), ExecMergeMatched(), ExecOnConflictUpdate(), ExecUpdate(), FindConflictTuple(), GetTupleForTrigger(), RelationFindReplTupleByIndex(), and RelationFindReplTupleSeq().
|
inlinestatic |
Definition at line 1310 of file tableam.h.
References RelationData::rd_tableam, and TableAmRoutine::tuple_satisfies_snapshot.
Referenced by ExecCheckTupleVisible(), RI_FKey_check(), and systable_recheck_tuple().
|
inlinestatic |
Definition at line 1289 of file tableam.h.
References RelationData::rd_tableam, TableScanDescData::rs_rd, and TableAmRoutine::tuple_tid_valid.
Referenced by TidListEval().
|
inlinestatic |
Definition at line 1512 of file tableam.h.
References fb(), RelationData::rd_tableam, and TableAmRoutine::tuple_update.
Referenced by ExecUpdateAct(), and simple_table_tuple_update().
|
extern |
Definition at line 49 of file tableam.c.
Referenced by ATPrepSetAccessMethod(), and DefineRelation().
|
extern |
Definition at line 50 of file tableam.c.
Referenced by initscan(), and table_block_parallelscan_initialize().