最近AWR报告中经常出现一个统计显示某SQL语句长时间执行
但通过V$SESSION视图又查不到相应的session
SELECT * FROM v$session s WHERE s.SQL_ID = '0n5hua47qnvcr';
通过检查代码得知此SQL为某个存储过程的某个游标代码。
再查询视图v$access,发现有三个session一直未有断开。
PREV_SQL_ID显示上一执行SQL语句正是'0n5hua47qnvcr'的上一步。通过计算执行时间正好符合AWR报告中显示的执行时间。
系统一直运行正常,但AWR中一直显示该SQL排名第一。请教各位大神,为何会出现这种情况?网上有说这是ORACLE的BUG?
1.为何SESSION的SQL ID是空的
2.为何如何解决这种问题?
PS:该SQL是通过ID查询的,不存在全表扫描或执行时间太长的情况,系统也一直正常运行,未出现宕机或者很卡的现象,也未收到用户任何异常反馈。