0

JDBCでDB2を使用していますが、接続を数分間アイドル状態にした後、初めて実行しようとすると、以下のコードがSQLExceptionをスローします。2回目以降は、必要な方法で正確に機能します。

ResultSet.next()

何が例外を引き起こすかについてのアイデアはありますか?

例外トレース:

FFDC Exception:com.ibm.db2.jcc.am.lo SourceId:com.ibm.ws.rsadapter.jdbc.WSJdbcResultSet.next 
ProbeId:2624 Reporter:
com.ibm.ws.rsadapter.jdbc.WSJccResultSet@b080b08
com.ibm.db2.jcc.am.lo: The current transaction was rolled back because of error "-30108".. SQLCODE=-1476, SQLSTATE=40506, DRIVER=3.57.110
at com.ibm.db2.jcc.am.bd.a(bd.java:663)
at com.ibm.db2.jcc.am.bd.a(bd.java:60)
at com.ibm.db2.jcc.am.bd.a(bd.java:127)
at com.ibm.db2.jcc.am.am.b(am.java:3760)
at com.ibm.db2.jcc.t4.eb.h(eb.java:278)
at com.ibm.db2.jcc.t4.eb.a(eb.java:239)
at com.ibm.db2.jcc.t4.eb.c(eb.java:31)
at com.ibm.db2.jcc.t4.u.a(u.java:32)
at com.ibm.db2.jcc.t4.j.Zb(j.java:259)
at com.ibm.db2.jcc.am.am.X(am.java:3554)
at com.ibm.db2.jcc.t4.d.f(d.java:1881)
at com.ibm.db2.jcc.am.gc.a(gc.java:200)
at com.ibm.db2.jcc.t4.d.a(d.java:109)
at com.ibm.db2.jcc.am.am.c(am.java:366)
at com.ibm.db2.jcc.am.am.next(am.java:293)
at com.ibm.ws.rsadapter.jdbc.WSJdbcResultSet.next(WSJdbcResultSet.java:3120)
4

1 に答える 1

3

「外側」のSQL コード は、「内側」の-1476SQL コード-30108が原因でトランザクションがロールバックされたことを示しています。

接続に失敗しましたが、再確立されました。特殊レジスター設定がリプレイされた可能性があります。新しい接続のホスト名または IP アドレス: host-name。新しい接続のサービス名またはポート番号: service-name。理由コード: reason-code。

接続がタイムアウトして切断されたと思います。

于 2013-02-06T21:32:13.643 に答える