diff --git a/src/common/backend/utils/misc/guc.cpp b/src/common/backend/utils/misc/guc.cpp index 93782b46b71dd5de6544868fac130d08105eb0f4..aa79befda62438cc8b6bbcaf9174f3558e870cf1 100755 --- a/src/common/backend/utils/misc/guc.cpp +++ b/src/common/backend/utils/misc/guc.cpp @@ -6709,6 +6709,8 @@ void BeginReportingGUCOptions(void) u_sess->utils_cxt.reporting_enabled = true; + /* start transaction to allow calling SearchSysCache such as show_collation_connection */ + start_xact_command(); /* Transmit initial values of interesting variables */ for (i = 0; i < u_sess->num_guc_variables; i++) { struct config_generic* conf = u_sess->guc_variables[i]; @@ -6716,7 +6718,7 @@ void BeginReportingGUCOptions(void) if (conf->flags & GUC_REPORT) ReportGUCOption(conf); } - + finish_xact_command(); } /*