merge 6.0.0bugfix2 into 6.0.0
【回合6.0.0】修复simple_query场景下opfusion上下文没有及时销毁问题 Created-by: wofanzheng Commit-by: wofanzheng Merged-by: opengauss_bot Description: 修复simple_query场景下opfusion上下文没有及时销毁问题 【标题】(请简要描述下实现的内容) 修复simple_query场景下opfusion上下文没有及时销毁问题 【实现内容】: 在opfusion对象不复用时销毁opfusion对象,并释放相关上下文 【根因分析】: 单事务插入场景下,opfusion对象重复创建,相关上下文重复创建,导致数据库实例动态内存占用过高 【实现方案】: 在opfusion对象不复用时销毁opfusion对象,并释放相关上下文 【关联需求或issue】: https://e.gitee.com/opengaussorg/dashboard?issue=IB0QG4 【开发自验报告】: 执行脚本,内存占用正常 输入图片说明 请附上自验结果(内容或者截图) 是否可以添加fastcheck测试用例,如是,请补充fastcheck用例 否 是否涉及资料修改,如是,在docs仓库补充资料 否 是否考虑升级场景(系统表修改、日志持久化以及修改执行态数据格式)、 否 是否考虑在线扩容等扩展场景 否 是否考虑异常场景/并发场景/前向兼容/性能场景 否 是否对其他模块产生影响 否 【其他说明】:无 See merge request: opengauss/openGauss-server!7869
This commit is contained in:
@ -2964,6 +2964,9 @@ static void exec_simple_query(const char* query_string, MessageType messageType,
|
||||
if (opFusionObj != NULL) {
|
||||
((OpFusion*)opFusionObj)->setCurrentOpFusionObj((OpFusion*)opFusionObj);
|
||||
if (OpFusion::process(FUSION_EXECUTE, NULL, completionTag, isTopLevel, NULL)) {
|
||||
if (!u_sess->attr.attr_sql.enable_opfusion_reuse) {
|
||||
OpFusion::tearDown((OpFusion*)opFusionObj);
|
||||
}
|
||||
CommandCounterIncrement();
|
||||
finish_xact_command();
|
||||
EndCommand(completionTag, dest);
|
||||
|
||||
Reference in New Issue
Block a user