Database update fails with an SQL error
The following example shows an error that can occur during database update operations. You might receive similar errors.
com.ibm.db2.jcc.a.SqlException: DB2 SQL error:
SQLCODE: -964, SQLSTATE: 57011, SQLERRMC: null
at com.ibm.db2.jcc.a.hd.d(hd.java(Compiled Code))
at com.ibm.db2.jcc.c.jb.l(jb.java(Compiled Code))
at com.ibm.db2.jcc.c.jb.a(jb.java(Compiled Code))
at com.ibm.db2.jcc.c.w.a(w.java(Inlined Compiled Code))
at com.ibm.db2.jcc.c.dc.c(dc.java(Compiled Code))
at com.ibm.db2.jcc.a.id.cb(id.java(Inlined Compiled Code))
at com.ibm.db2.jcc.a.id.d(id.java(Compiled Code))
at com.ibm.db2.jcc.a.id.Y(id.java(Compiled Code))
at com.ibm.db2.jcc.a.id.executeUpdate(id.java(Compiled Code))
at com.ibm.ws.rsadapter.jdbc.WSJdbcPreparedStatement.
pmiExecuteUpdate(WSJdbcPreparedStatement.java(Compiled Code))
at com.ibm.ws.rsadapter.jdbc.WSJdbcPreparedStatement.
executeUpdate(WSJdbcPreparedStatement.java(Compiled Code))
The
SQLCODE: -964, SQLSTATE: 57011
error
occurs
when the transaction log space is depleted. This problem can occur
because of a temporary increase in the number of active transactions. - Open a DB2® command window.
- Run the following command:
db2 get snapshot for all on itimdb
- Examine the values of the following entries
to determine if the
database is running low on available log space:
- Log space available to the database
- Log space used by the database
- Secondary logs allocated currently
- Increase the
number of secondary log files available to the database
by 12 to provide additional log file space:
- From the DB2 command window,
run the following command:
db2 update db cfg for itimdb using logsecond
- Specify a value of logsecond plus 12 for x.
- From the DB2 command window,
run the following command:
If the
problem reoccurs, DB2 UDB in-doubt
transactions might be the cause. In-doubt
transactions result in transaction log space shortage.
Previous server failures or crashes cause the transaction log to become
full when transactions are performed. To correct this problem, complete
these steps:
CAUTION:
If Identity Manager Server is
running, changing transactions with timestamps close to the current
time can cause server failures.
- From a DB2 command window, connect to the Identity Manager database.
- Run the following command:
db2 list indoubt transactions with prompting
- Roll back any transactions with a timestamp near the time of the server crash.