Adds index_delete_tuples instead of compute_xid_horizon_for_tuples

Relevant PG commit:
d168b666823b6e0bcf60ed19ce24fb5fb91b8ccf
pull/5209/head
Halil Ozan Akgul 2021-08-11 15:29:47 +03:00 committed by Sait Talha Nisanci
parent b790ecf180
commit 4bc0c80bba
2 changed files with 35 additions and 0 deletions

View File

@ -634,6 +634,16 @@ columnar_tuple_satisfies_snapshot(Relation rel, TupleTableSlot *slot,
} }
#if PG_VERSION_NUM >= PG_VERSION_14
static TransactionId
columnar_index_delete_tuples(Relation rel,
TM_IndexDeleteOp *delstate)
{
elog(ERROR, "columnar_index_delete_tuples not implemented");
}
#else
static TransactionId static TransactionId
columnar_compute_xid_horizon_for_tuples(Relation rel, columnar_compute_xid_horizon_for_tuples(Relation rel,
ItemPointerData *tids, ItemPointerData *tids,
@ -643,6 +653,9 @@ columnar_compute_xid_horizon_for_tuples(Relation rel,
} }
#endif
static void static void
columnar_tuple_insert(Relation relation, TupleTableSlot *slot, CommandId cid, columnar_tuple_insert(Relation relation, TupleTableSlot *slot, CommandId cid,
int options, BulkInsertState bistate) int options, BulkInsertState bistate)
@ -2096,7 +2109,11 @@ static const TableAmRoutine columnar_am_methods = {
.tuple_get_latest_tid = columnar_get_latest_tid, .tuple_get_latest_tid = columnar_get_latest_tid,
.tuple_tid_valid = columnar_tuple_tid_valid, .tuple_tid_valid = columnar_tuple_tid_valid,
.tuple_satisfies_snapshot = columnar_tuple_satisfies_snapshot, .tuple_satisfies_snapshot = columnar_tuple_satisfies_snapshot,
#if PG_VERSION_NUM >= PG_VERSION_14
.index_delete_tuples = columnar_index_delete_tuples,
#else
.compute_xid_horizon_for_tuples = columnar_compute_xid_horizon_for_tuples, .compute_xid_horizon_for_tuples = columnar_compute_xid_horizon_for_tuples,
#endif
.tuple_insert = columnar_tuple_insert, .tuple_insert = columnar_tuple_insert,
.tuple_insert_speculative = columnar_tuple_insert_speculative, .tuple_insert_speculative = columnar_tuple_insert_speculative,

View File

@ -168,6 +168,17 @@ fake_tuple_satisfies_snapshot(Relation rel, TupleTableSlot *slot,
} }
#if PG_VERSION_NUM >= PG_VERSION_14
static TransactionId
fake_index_delete_tuples(Relation rel,
TM_IndexDeleteOp *delstate)
{
elog(ERROR, "fake_index_delete_tuples not implemented");
return InvalidTransactionId;
}
#else
static TransactionId static TransactionId
fake_compute_xid_horizon_for_tuples(Relation rel, fake_compute_xid_horizon_for_tuples(Relation rel,
ItemPointerData *tids, ItemPointerData *tids,
@ -178,6 +189,9 @@ fake_compute_xid_horizon_for_tuples(Relation rel,
} }
#endif
/* ---------------------------------------------------------------------------- /* ----------------------------------------------------------------------------
* Functions for manipulations of physical tuples for fake AM. * Functions for manipulations of physical tuples for fake AM.
* ---------------------------------------------------------------------------- * ----------------------------------------------------------------------------
@ -556,7 +570,11 @@ static const TableAmRoutine fake_methods = {
.tuple_get_latest_tid = fake_get_latest_tid, .tuple_get_latest_tid = fake_get_latest_tid,
.tuple_tid_valid = fake_tuple_tid_valid, .tuple_tid_valid = fake_tuple_tid_valid,
.tuple_satisfies_snapshot = fake_tuple_satisfies_snapshot, .tuple_satisfies_snapshot = fake_tuple_satisfies_snapshot,
#if PG_VERSION_NUM >= PG_VERSION_14
.index_delete_tuples = fake_index_delete_tuples,
#else
.compute_xid_horizon_for_tuples = fake_compute_xid_horizon_for_tuples, .compute_xid_horizon_for_tuples = fake_compute_xid_horizon_for_tuples,
#endif
.relation_set_new_filenode = fake_relation_set_new_filenode, .relation_set_new_filenode = fake_relation_set_new_filenode,
.relation_nontransactional_truncate = fake_relation_nontransactional_truncate, .relation_nontransactional_truncate = fake_relation_nontransactional_truncate,