我有一个奇怪的情况与调试pl sql代码。plsql远程调试断点不工作
我设置sql开发人员来侦听调试连接。在Java代码中附上调试器,具有下面的代码:
CallableStatement cstmt = null;
try {
cstmt = getConnection().prepareCall("begin DBMS_DEBUG_JDWP.CONNECT_TCP('10.1.1.17', 4000); end;");
cstmt.execute();
} catch (SQLException e) {
e.printStackTrace();
} finally {
closeStatement(cstmt);
}
调试器连接成功,即我可以在SQL Developer中看到Run Manager
这方面存在的。
尽管连接创建调试器不起作用。有时候,断点不会打上绿色标记,有时候是断点,但断点仍然不起作用。在任何情况下,调试器都不会在休息时停止,被调用的过程被成功执行,就好像没有休息一样。
我放置中断的软件包被编译为调试,Start Debugger Option
设置为Step Over
。我也尝试过Sql Developer
3.2.2和3.0.6,3.0.4具有相同的行为。从'Sql Developer'和应用程序使用的用户是相同的,并且此用户具有调试权限(DEBUG CONNECT SESSION
,DEBUG ANY PROCEDURE
)。我想法如何使它工作。
接下来要做什么,如何诊断这个问题?
会话是否打开了PL/SQL调试? ALTER SESSION SET PLSQL_DEBUG = TRUE – Brian 2013-05-11 13:20:44
您使用的是RAC吗?如果是这样,你需要连接到一个特定的节点。 – 2013-05-11 16:03:43
@Brian,这没有任何影响。我发现根问题并将添加评论。 – 2013-05-12 18:11:05