Fixed partition table concurrent update issue

This commit is contained in:
dengxuyue
2021-07-22 21:52:26 +08:00
parent 6542800e3c
commit 8144e7706c
4 changed files with 25 additions and 8 deletions

View File

@ -1194,7 +1194,8 @@ TupleTableSlot* ExecDelete(ItemPointer tupleid, Oid deletePartitionOid, int2 buc
fake_relation,
result_rel_info->ri_RangeTableIndex,
&tmfd.ctid,
tmfd.xmax);
tmfd.xmax,
false);
if (!TupIsNull(epqslot)) {
*tupleid = tmfd.ctid;
goto ldelete;
@ -1641,7 +1642,8 @@ TupleTableSlot* ExecUpdate(ItemPointer tupleid,
fake_relation,
result_rel_info->ri_RangeTableIndex,
&tmfd.ctid,
tmfd.xmax);
tmfd.xmax,
false);
if (!TupIsNull(epq_slot)) {
*tupleid = tmfd.ctid;
@ -1866,7 +1868,8 @@ TupleTableSlot* ExecUpdate(ItemPointer tupleid,
fake_relation,
result_rel_info->ri_RangeTableIndex,
&tmfd.ctid,
tmfd.xmax);
tmfd.xmax,
result_relation_desc->rd_rel->relrowmovement);
if (!TupIsNull(epq_slot)) {
*tupleid = tmfd.ctid;
@ -2022,7 +2025,8 @@ TupleTableSlot* ExecUpdate(ItemPointer tupleid,
old_fake_relation,
result_rel_info->ri_RangeTableIndex,
&tmfd.ctid,
tmfd.xmax);
tmfd.xmax,
result_relation_desc->rd_rel->relrowmovement);
if (!TupIsNull(epq_slot)) {
*tupleid = tmfd.ctid;
goto ldelete;