This is an automated email from the ASF dual-hosted git repository. djwang pushed a commit to branch main in repository https://gitbox.apache.org/repos/asf/cloudberry.git
commit 5cfde24dc4e2897bf5c58437be97c7ab93c476aa Author: NJrslv <[email protected]> AuthorDate: Tue Mar 31 14:15:58 2026 +0300 [gp_stats_collector] Wrap hook call in try/catch on error path Add PG_TRY/PG_CATCH around query_info_collect_hook in PortalCleanup error path to prevent exceptions from propagating during cleanup. --- src/backend/commands/portalcmds.c | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/src/backend/commands/portalcmds.c b/src/backend/commands/portalcmds.c index 0ea5874e884..e23dc1d9c43 100644 --- a/src/backend/commands/portalcmds.c +++ b/src/backend/commands/portalcmds.c @@ -374,10 +374,22 @@ PortalCleanup(Portal portal) FreeQueryDesc(queryDesc); CurrentResourceOwner = saveResourceOwner; - } else { + } + else + { /* GPDB hook for collecting query info */ if (queryDesc->gpsc_query_key && query_info_collect_hook) - (*query_info_collect_hook)(METRICS_QUERY_ERROR, queryDesc); + { + PG_TRY(); + { + (*query_info_collect_hook)(METRICS_QUERY_ERROR, queryDesc); + } + PG_CATCH(); + { + FlushErrorState(); + } + PG_END_TRY(); + } } } --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
