【YashanDB知识库】stmt未close,导致YAS-00103 no free block in sql main pool part 0报错分析
创始人
2024-12-08 22:37:10
0

问题现象

问题单:YAS-00103 no free block in sql main pool part 0,YAS-00105 out of memory to allocate hash table of size = 256

现象:业务处理sql时,报错YAS-00103 no free block in sql main pool part 0

问题风险及影响

业务处理报错,影响功能使用

问题影响版本

客户版本:22.2.4.1

问题发生原因

表现原因:sql pool空间不足,申请不到报错。

根原因:stmt使用后,未调用close,session长时间未关闭。open coursor无法循环使用,导致该问题。

解决方式及规避方法

规避方法:增大share_pool_size;alter system set share_pool_size=xxx scope=spfile;

解决方案:stmt调用,不使用后调用close关闭。

问题分析和处理过程

复现方案:

如上报错

分析

查看v$open_cursor视图

每个cursor的状态都是0,0是idle状态,无法循环使用。

代码分析:

typedef enum EnAnlStmtStatus {     STMT_STATUS_IDLE = 0,     STMT_STATUS_PREPARE = 1,     STMT_STATUS_EXECUTE = 2,     STMT_STATUS_FETCH = 3,     STMT_STATUS_FREE = 4, } AnlStmtStatus; 



没有close的stmt,并且执行完毕这条sql语句了,就是idle。

close的stmt,则是free状态。只有free状态的stmt可以复用。

cursor连接不会销毁,只有session断开连接才会销毁,每个session用open_cursors控制最大的cursor数量。

经验总结

v$global_mpool //查看sql pool使用情况

v$open_cursor //查看stmt的cursor使用状况

OPEN_CURSORS //配置session最大cursor的使用个数

相关内容

热门资讯

透视黑科技!pokemmo脚本... 透视黑科技!pokemmo脚本最新版(透视)永久脚本辅助神器(详细辅助揭秘教程);1、超多福利:超高...
透视规律"德普之星透... 透视规律"德普之星透视辅助软件是真的吗"详细辅助分享教程(确实有挂);1、金币登录送、破产送、升级送...
透视有挂“pokemmo脚本辅... 1、透视有挂“pokemmo脚本辅助”详细辅助解密教程(竟然有挂)。2、透视有挂透视辅助简单,透视有...
透视安卓版"wepo... 透视安卓版"wepoker有没有挂"详细辅助系统教程(好像真的是有挂);1、玩家可以在wepoker...
透视实锤“wepoker软件靠... 透视实锤“wepoker软件靠谱么”详细辅助线上教程(本然存在有挂);最新版2024是一款经典耐玩的...
透视app"wepo... 透视app"wepoker辅助工具"详细辅助可靠教程(切实是有挂)wepoker辅助工具辅助器中分为...
透视规律“aapoker怎么开... 透视规律“aapoker怎么开辅助器”详细辅助透明教程(总是真的有挂)是由北京得透视规律黑科技有限公...
透视规律"wepok... 透视规律"wepoker有什么规律"详细辅助安装教程(总是有挂);该软件可以轻松地帮助玩家将wepo...
透视教程“epoker透视”详... 透视教程“epoker透视”详细辅助黑科技教程(本然存在有挂);透视教程软件透明挂更新新赛季,主要更...
透视美元局"德普之星... 透视美元局"德普之星透视软件免费入口官网"详细辅助教你攻略(果然存在有挂)1、德普之星透视软件免费入...