【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的使用个数

相关内容

热门资讯

透视ai代打!wepoker透... 1、透视ai代打!wepoker透视脚本免费下载(透视)外挂透明挂辅助插件(往昔是真的有挂);详细教...
透视总结!hhpoker软件安... 透视总结!hhpoker软件安装包,四川血战到底攻略,玩家教你(有挂攻略)1、超多福利:超高返利,海...
透视攻略!德普之星辅助器(透视... 透视攻略!德普之星辅助器(透视)技巧教程(确实真的是有挂);亲,关键说明,德普之星辅助器赛季回归,德...
透视透视挂!aapoker俱乐... 透视透视挂!aapoker俱乐部靠谱吗(透视)外挂透明挂辅助神器(竟然是真的有挂)是一款可以让一直输...
透视实锤!wepoker游戏安... 透视实锤!wepoker游戏安装教程,开心庄园辅助器免费,攻略教程(有挂介绍)1、完成开心庄园辅助器...
透视辅助!德普之星有没有挂(透... 透视辅助!德普之星有没有挂(透视)玩家教你(一贯真的有挂)1、玩家可以在德普之星有没有挂软件透明挂俱...
透视线上!wpk辅助器下载(透... 透视线上!wpk辅助器下载(透视)外挂透明挂辅助神器(一贯真的有挂);亲真的是有正版授权,小编(透视...
透视教学!wpk透视脚本(透视... 透视教学!wpk透视脚本(透视)2025新版技巧(都是是真的有挂);一、wpk透视脚本AI软件牌型概...
透视模拟器!sohoo pok... 透视模拟器!sohoo poker辅助,微信小程序功夫川码辅助,2025新版总结(有挂细节)1、操作...
透视脚本!wepoker底牌透... 透视脚本!wepoker底牌透视脚本app(透视)外挂透明挂辅助工具(真是真的是有挂)是一款可以让一...