我正在使用Oracle Moble Database 10.2.0.1.1和几个MDU进行维护和应用。这已经存在了大约16年。直到大约一周前我们开始出现同步问题时,一切工作都很顺利。如果MDU无法同步三次,则会计划完全刷新数据,这可能需要长达两个小时。在发生这种情况时,它会导致其他MDU尝试同步超时。并且需要完全刷新的MDU列表会增长,等等。
我们已经挖掘并发现原因似乎是应用程序尝试找到关闭当前会话与数据库的方法的错误。因此,它会导致超时。我在谷歌,这里,甚至甲骨文已弃用的页面上看到了我找不到任何东西。我们没有改变任何东西,没有新的代码,也没有切换jdk / jre,但我们想知道是否有东西被破坏了,或者别的东西。所以我试图找到这种方法,这样我们就可以尝试安装一个拥有它的jdk / jre,看看它是否解决了这个问题。堆栈跟踪中的消息如下:
clog: : MANDATORY: ALL: Exception in cycle:
Exception: java.sql.SQLException: ORA-02049: timeout: distributed transaction waiting for lock
ORA-02049: timeout: distributed transaction waiting for lock
clog ::强制性:全部: 例外:java.lang.NoSuchMethodError:oracle.jdbc.driver.OracleConnection.close_statements() oracle.jdbc.driver.OracleConnection.close_statements()