pl/sql调试时遇到的一个问题

firandiir 2010-02-25 02:57:00
本人在用pl/sql调试的时候遇到一个很莫名奇妙的问题
就是右击要调试的过程,点击添加调试信息后,机子就一直卡在那了,查看v$transaction表,显示当前有一事务在运行。查看v$locked_object表里,有11条记录,对应的操作系统进程号全是plsqldev,但是他们的object_id都不一样
整个数据库中就这么两个过程,其余的过程都不存在这种问题
...全文
108 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
firandiir 2010-02-25
  • 打赏
  • 举报
回复
恩,我今天在我同学机子上试了 都不行,估计是oracle本省的问题,谢谢了
suiziguo 2010-02-25
  • 打赏
  • 举报
回复
没遇到过,现在ORACLE官网上都不提供9i版本下载了,不晓得是否有响应patch。


如果你库中锁定对象和资料上一样,那就基本可以肯定问题所在了。最怕BUG。。。。
firandiir 2010-02-25
  • 打赏
  • 举报
回复
9.2.0.1.0
下面的连接讲的问题好象跟我很相似
http://www.china-code.net/read/7/5/149999.html

楼上的大虾,你以前遇到过这种问题吗?
suiziguo 2010-02-25
  • 打赏
  • 举报
回复
估计是9201。不想升级,就去看看有没有相应的补丁。
suiziguo 2010-02-25
  • 打赏
  • 举报
回复
metalink的帐号有问题,无法查了。

你是什么版本?
firandiir 2010-02-25
  • 打赏
  • 举报
回复
自己再顶以下,等待大牛出现
firandiir 2010-02-25
  • 打赏
  • 举报
回复
查看v$session_wait里,有以下几个事件处于等待状态:
pmon timer
rdbms ipc message
smon tiger
sql*net message from client
wakeup time manager
一一上网查阅,发现都不是问题
使用下列SQL语句
Select s.sid,s.serial#,s.username,s.status,s.machine,s.program,s.module,a.sql_text from v$session s,v$sqlarea a where s.username is not null and s.sql_address=a.address;

得到两条记录,其中第一条记录就是查询本身,第二条记录应该就是引起程序挂起的原因,具体是:
PROGRAM:PL/SQLDEV.EXE
module:PL/SQL Developer
sql_text:SQL_TEXT:ALTER PROCEDURE TAX.INPORT_LevyYn COMPILE DEBUG


上网查阅了相关资料,发现上述sql_text中由于 可选项debug的存在导致Oracle假死机,给出的建议是使用更高版本的oracle,难道真的只能这样吗?
suiziguo 2010-02-25
  • 打赏
  • 举报
回复
v$session_wait,看看event值。
firandiir 2010-02-25
  • 打赏
  • 举报
回复
楼上的能讲的详细点吗?
我接触Oracle才两个月,很多都是东西都不是很清楚 
suiziguo 2010-02-25
  • 打赏
  • 举报
回复
看看系统的等待事件,锁定对象都是些什么对象。

3,491

社区成员

发帖
与我相关
我的任务
社区描述
Oracle 高级技术相关讨论专区
社区管理员
  • 高级技术社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧