!3628 解决IUD底噪消除对tpcc性能影响的问题

Merge pull request !3628 from yang/test_tpcc
This commit is contained in:
opengauss_bot
2023-06-26 12:41:25 +00:00
committed by Gitee
6 changed files with 8 additions and 26 deletions

View File

@ -1300,28 +1300,7 @@ void ExecCloseIndices(ResultRelInfo* resultRelInfo)
* such stuff will be cleaned up automatically in FreeExecutorState.
*/
}
void OpFusionExecCloseIndices(ResultRelInfo* resultRelInfo)
{
int i;
int numIndices;
RelationPtr indexDescs;
numIndices = resultRelInfo->ri_NumIndices;
indexDescs = resultRelInfo->ri_IndexRelationDescs;
for (i = 0; i < numIndices; i++) {
if (indexDescs[i] == NULL)
continue; /* shouldn't happen? */
/* Drop lock acquired by ExecOpenIndices */
index_close(indexDescs[i], NoLock);
}
/*
* XXX should free indexInfo array here too? Currently we assume that
* such stuff will be cleaned up automatically in FreeExecutorState.
*/
}
/*
* Copied from ExecInsertIndexTuples
*/

View File

@ -285,7 +285,7 @@ bool DeleteFusion::execute(long max_rows, char *completionTag)
/* ***************
* step 3: done *
*************** */
OpFusionExecCloseIndices(result_rel_info);
ExecCloseIndices(result_rel_info);
m_local.m_isCompleted = true;
m_local.m_scan->End(true);
ExecDoneStepInFusion(m_c_local.m_estate);

View File

@ -241,7 +241,7 @@ static void ExecReleaseResource(Tuple tuple, TupleTableSlot *slot, ResultRelInfo
{
tableam_tops_free_tuple(tuple);
(void)ExecClearTuple(slot);
OpFusionExecCloseIndices(result_rel_info);
ExecCloseIndices(result_rel_info);
ExecDoneStepInFusion(estate);
if (bucket_rel != NULL) {
bucketCloseRelation(bucket_rel);

View File

@ -571,7 +571,7 @@ lreplace:
/****************
* step 3: done *
****************/
OpFusionExecCloseIndices(result_rel_info);
ExecCloseIndices(result_rel_info);
m_local.m_isCompleted = true;
m_local.m_scan->End(true);
ExecDoneStepInFusion(m_c_local.m_estate);

View File

@ -2032,7 +2032,11 @@ static bool ReadBuffer_common_ReadBlock(SMgrRelation smgr, char relpersistence,
pgstat_count_buffer_read_time(INSTR_TIME_GET_MICROSEC(io_time));
INSTR_TIME_ADD(u_sess->instr_cxt.pg_buffer_usage->blk_read_time, io_time);
pgstatCountBlocksReadTime4SessionLevel(INSTR_TIME_GET_MICROSEC(io_time));
}
} else {
INSTR_TIME_SET_CURRENT(io_time);
INSTR_TIME_SUBTRACT(io_time, io_start);
pgstatCountBlocksReadTime4SessionLevel(INSTR_TIME_GET_MICROSEC(io_time));
}
/* check for garbage data */
if (rdStatus == SMGR_RD_CRC_ERROR) {

View File

@ -644,7 +644,6 @@ extern Partition ExecOpenScanParitition(
extern void ExecOpenIndices(ResultRelInfo* resultRelInfo, bool speculative);
extern void ExecCloseIndices(ResultRelInfo* resultRelInfo);
extern void OpFusionExecCloseIndices(ResultRelInfo* resultRelInfo);
extern List* ExecInsertIndexTuples(
TupleTableSlot* slot, ItemPointer tupleid, EState* estate, Relation targetPartRel,
Partition p, int2 bucketId, bool* conflict, Bitmapset *modifiedIdxAttrs, bool inplaceUpdated = false);