我们在Oracle 10数据库(使用Hudson作为持续集成服务器)前面,针对Weblogic 9运行Junit 4测试套件,有时候我们会在脚本拆卸期间遇到ORA-12519崩溃。但是,错误是非常间歇的:
>它通常发生在相同的Test类
>它不总是发生在相同的测试用例(有时它们通过)
>它不会发生相同数量的测试用例(从3-9任何地方)
>有时它不会发生,一切都通过
虽然我不能保证这不会发生在本地(当运行对同一个数据库,当然),我已经运行同一套的类多次没有问题。
有任何想法吗?
不知道这是否会是每个人的答案,但在一些挖掘之后,这是我们想出的。
错误明显是由于事实,监听器不接受连接,但为什么我们会得到那个错误,当其他测试可以连接好(我们也可以通过sqlplus连接没有问题)?问题的关键不是我们不能连接,而是间歇性
经过一番调查,我们发现在类安装过程中创建了一些静态数据,这将在测试类的生命周期保持开放连接,创建新的连接。现在,即使所有的资源正确地释放,当这个类超出范围(通过一个finally {}块,当然),在运行时,有一些情况下,这个类将吞下所有可用的连接(好,坏练习警报 – 这是单元测试代码,直接连接,而不是使用池,所以同样的问题不会发生在生产)。
原文地址:https://www.jb51.cc/oracle/206778.html
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。