druid/src/main/java/com/alibaba/druid/pool/DruidAbstractDataSource.java
Line 1391 in c7ad372
| | booleanresult = true; |
这行代码 result
初始值是否修改为 false
更合适?
原因如下:
当执行 validConnectionChecker#isValidConnection
检查连接有效性的方法抛出非 SQLException
的 Exception
时,会走到
catch (Exception ex) {
error = ex;
}
语句块,此时 resule
依旧是 true
,继续执行
if (!result) {
SQLException sqlError = error != null ? //
new SQLException("validateConnection false", error) //
: new SQLException("validateConnection false");
throw sqlError;
}
将无法起到将 Exception
异常包装成 SQLException
的目的(我猜测这段代码是这个目的)。
3条答案
按热度按时间iyfjxgzm1#
阿里的这个开源项目1.8k个问题都没人解答吗?现在遇到那个ora01013的问题一直都没有解决,偶现。
rseugnpd2#
阿里的这个开源项目1.8k个问题都没人解答吗?现在遇到那个ora01013的问题一直都没有解决,偶现。
什么问题?我可以帮忙看看
ipakzgxi3#
阿里的这个开源项目1.8k个问题都没人解答吗?现在遇到那个ora01013的问题一直都没有解决,偶现。
什么问题?我可以帮忙看看
#2175
和这个人遇到的问题一样。
自动化ci有时候会遇到ORA-01013的错误,但是理论上次来说服务端都不可能有自动取消的动作,都是DDL。
create tablespace
create user
-- 然后测试业务功能
drop user
drop tablespace
一个轮训自动化任务下来,这个流程会执行很多次,500次左右。
有一段时间消失过这个问题,也是偶先的后台会收到ORA-01013的错误。不是必先问题。