Closed cbqqkcel closed 3 years ago
问题已修复,谢谢报告 bug。
问题已修复,谢谢报告 bug。
好多地方都有这个问题
这个 H2 的遗留代码的确看起来有点困惑, 我新加了getInternalError方法, 把throw DbException.throwInternalError全替换成throw DbException.getInternalError 这样看起来清晰点,而不是两个throw 不过它这个实现目的就是为了抛出一个RuntimeException,代码是能达到目的的,只是看起来别扭。
这个 H2 的遗留代码的确看起来有点困惑, 我新加了getInternalError方法, 把throw DbException.throwInternalError全替换成throw DbException.getInternalError 这样看起来清晰点,而不是两个throw 不过它这个实现目的就是为了抛出一个RuntimeException,代码是能达到目的的,只是看起来别扭。
是的。他这个DbException.throwInternalError不好用,有时候还改变了Java静态分析的控制流。还不如每次手动 throw
https://github.com/lealone/Lealone/blob/16842b21abdbb6de622c92b1001d2fed1eab03f7/lealone-client/src/main/java/org/lealone/client/session/ClientSessionFactory.java#L122
DbException.throwInternalError 里面已经抛异常,不会有返回了。 感觉这个 throwInternalError 有问题。