最近,我们将我们的环境从Jdk1.6升级到Jdk1.8,从Jboss服务器4.3升级到Jboss 7.1.0EAP,没有任何代码更改。我们面临着一个特殊的问题,我们得到了相同的SQL_ID,但有不同的会话ID,它们运行得越来越长,没有任何停止。谁能告诉我问题的原因是什么?或者任何指针都可以帮助我们解决这个无休止的长会话的原因
bpzcxfmw1#
相同的SQL_ID只不过是两个会话执行相同的查询。当查询完全相同时就会发生这种情况。从某个表中选择 *,其中某个列=:某个值;看一下some_value前面的“:“,这就是他们所说的绑定变量。因此,如果您的应用程序运行此查询两次(即使参数值不同),您将在会话中使用相同的sql_id。可能绑定变量从
select * from v$sql_bind_capture where sql_id = 'your_sql_id';
可能会帮助您找到会话正在使用的变量的值,以便执行该长
1条答案
按热度按时间bpzcxfmw1#
相同的SQL_ID只不过是两个会话执行相同的查询。当查询完全相同时就会发生这种情况。
从某个表中选择 *,其中某个列=:某个值;
看一下some_value前面的“:“,这就是他们所说的绑定变量。
因此,如果您的应用程序运行此查询两次(即使参数值不同),您将在会话中使用相同的sql_id。
可能绑定变量从
可能会帮助您找到会话正在使用的变量的值,以便执行该长