[jcc][t4][102][10040][3.57.82] 非原子批处理出现故障。虽然已经提交了批处理,但是该批处理的某个成员至少发生了一个异常。
使用 getNextException() 来检索已经过批处理的特定元素的异常。 ERRORCODE=-4228, SQLSTATE=null
查看db2diag.log日志: 2012-11-20-10.00.33.551000+480 E27658279F1143 LEVEL: Error PID : 2276 TID : 3796 PROC : db2syscs.exe INSTANCE: DB2 NODE : 000 DB : NCTEST APPHDL : 0-49794 APPID: 20.10.80.247.48084.121120015251 AUTHID : NCTEST EDUID : 3796 EDUNAME: db2agent (NCTEST) 0 FUNCTION: DB2 UDB, buffer pool services, sqlbAllocateExtent, probe:840 MESSAGE : ADM6044E The DMS table space "NNC_INDEX01" (ID "5") is full. If this is an autoresize or automatic storage DMS tablespace, the maximum table space size may have been reached or the existing containers or storage paths cannot grow any more. Additional space can be added to the table space by either adding new containers or extending existing ones using the ALTER TABLESPACE SQL statement. If this is an autoresize or automatic storage DMS table space, additional space can be added by adding containers to an autoresize table space or by adding new storage paths to an automatic storage database.
2012-11-20-10.00.33.551000+480 I27659424F1147 LEVEL: Warning PID : 2276 TID : 3796 PROC : db2syscs.exe INSTANCE: DB2 NODE : 000 DB : NCTEST APPHDL : 0-49794 APPID: 20.10.80.247.48084.121120015251 AUTHID : NCTEST EDUID : 3796 EDUNAME: db2agent (NCTEST) 0 FUNCTION: DB2 UDB, buffer pool services, sqlbObtainDataExtent, probe:800 MESSAGE : ZRC=0x85020021=-2063466463=SQLB_END_OF_CONTAINER "DMS Container space full" DATA #1 : Object descriptor, PD_TYPE_SQLB_OBJECT_DESC, 88 bytes Obj: {pool:5;obj:11020;type:1} Parent={4;1360} lifeLSN: 000000005AAC4D6E tid: 0 0 0 extentAnchor: 78560 initEmpPages: 0 poolPage0: 0 poolflags: 102 objectState: 27 lastSMP: 0 pageSize: 4096 extentSize: 32 bufferPoolID: 2 partialHash: 705429509 bufferPool: 0x000000001a7837a0 pdef: 0x000000001a804160
从上述错误来看,是表空间NNC_INDEX01表空间被占满了。 看下NNC_INDEX01表空间使用情况: db2 => list tablespaces show detail 发现可用页数已经变成了0。
查看报错的地方,是一个绑定变量+Batch的操作。insert into IC_ATP_F,这个表有一个主键索引,而批量插入的时候肯定会用到索引表空间。 添加一个容器,alter tablespace nnc_index01 add (file '\db2\nnc_index01_2' 204800)
再次执行,问题解决。
转自:http://www.cnblogs.com/zhaoshuangshuang/archive/2012/11/20/2779797.html