-
Notifications
You must be signed in to change notification settings - Fork 8.6k
Closed
Description
执行单元测试MySqlHexTest就能看到死循环效果:
Caused by: java.net.UnknownHostException: hbase-01 at java.net.InetAddress.getAllByName0(InetAddress.java:1281) at java.net.InetAddress.getAllByName(InetAddress.java:1193) at java.net.InetAddress.getAllByName(InetAddress.java:1127) at com.mysql.cj.protocol.StandardSocketFactory.connect(StandardSocketFactory.java:130) at com.mysql.cj.protocol.a.NativeSocketConnection.connect(NativeSocketConnection.java:63) ... 9 more原因是MySqlHexTest测试类配置的jdbcUrl是
jdbc:mysql://hbase-01:3306/sonar,而测试环境并没有配置hbase-01的ip地址。
建议借鉴这个PR的做法,把RunTime异常和SQL异常处理合并,如果一次连接都没有创建成功过,就break中止,否则按原来SQL异常处理分支处理。
Originally posted by @zrlw in #4885 (comment)
@zrlw 你提出的场景与 @shilei1987 描述的问题完全不是一码事。测试环境并没有配置hbase-01的ip地址并不会导致真实物理连接被创建,也不存在消耗数据库连接的问题。如此修改这个创建过程逻辑导致我们应用在启动刚开始的故障自恢复能力完全失效。
建议恢复原始逻辑!!!
Metadata
Metadata
Assignees
Labels
No labels