我正在尝试在客户端的工作站上运行Pentaho数据集成(Kettle)作业。它会产生以下错误:
2012/05/21 11:38:21 - Update Case Capital.0 - ERROR (version 4.3.0-GA, build 16753 from 2012-04-18 21.39.30 by buildguy) : Unable to commit Update connection [Voyager] :org.pentaho.di.core.exception.KettleDatabaseException:
2012/05/21 11:38:21 - Update Case Capital.0 - ERROR (version 4.3.0-GA, build 16753 from 2012-04-18 21.39.30 by buildguy) : Error closing prepared statement
2012/05/21 11:38:21 - Update Case Capital.0 - ERROR (version 4.3.0-GA, build 16753 from 2012-04-18 21.39.30 by buildguy) : This statement is already closed.
作业在我的计算机上运行在测试数据库上正常运行,并且它在客户端也没有任何问题。其他Kettle Jobs也会因客户端出现同样的错误而失败。
在完成任意数量的更新后,更新步骤(运行SQL UPDATE语句)中会发生错误。使用的数据库是Firebird 2.5.1.26351(超级经典)。
关于为什么会发生这种情况的任何建议?
答案 0 :(得分:1)
鉴于错误消息错误关闭预准备语句和此语句已关闭。,我认为您遇到了Jaybird 2.1.6及更早版本中的错误,其中多次关闭语句将抛出SQLException(而JDBC api doc指定如果已经关闭则应忽略close()
)。
该错误已在Jaybird 2.2中修复(尚未发布,但测试版可在http://www.firebirdsql.org/en/jdbc-driver/获得)
我希望您可以测试一下是否确实解决了问题,否则我会感谢http://tracker.firebirdsql.org/browse/JDBC
上更详细的错误报告完全披露:我是Jaybird的开发者之一。