diff --git a/src/backend/executor/execMain.c b/src/backend/executor/execMain.c index e6713aa20aa..a692e4bf3a2 100644 --- a/src/backend/executor/execMain.c +++ b/src/backend/executor/execMain.c @@ -238,7 +238,7 @@ standard_ExecutorStart(QueryDesc *queryDesc, int eflags) { PG_TRY(); { - switch(*gp_resmanager_memory_policy) + switch (*gp_resmanager_memory_policy) { case RESMANAGER_MEMORY_POLICY_AUTO: PolicyAutoAssignOperatorMemoryKB(queryDesc->plannedstmt, @@ -255,7 +255,10 @@ standard_ExecutorStart(QueryDesc *queryDesc, int eflags) } PG_CATCH(); { - mppExecutorCleanup(queryDesc); + /* GPDB hook for collecting query info */ + if (query_info_collect_hook) + (*query_info_collect_hook)(QueryCancelCleanup ? METRICS_QUERY_CANCELED : METRICS_QUERY_ERROR, queryDesc); + PG_RE_THROW(); } PG_END_TRY();