DB2 SQLCODE: -1476, SQLSTATE: 40506, SQLERRMC: -964 吐血提问

陪公主读书 2010-03-18 11:47:54
今天db2报了一个这样的错误,把我都搞晕了,查了一顿资料也没找到答案。在这里问问csdn的大虾,吐血拜问。

错误日志:
2010-03-18 18:59:39,937 WARN org.hibernate.util.JDBCExceptionReporter - SQL Error: -99999, SQLState: null
2010-03-18 18:59:39,937 ERROR org.hibernate.util.JDBCExceptionReporter - [ibm][db2][jcc][102][10040] 非自动批处理出现故障。虽然已经提交了批处理,但是该批处理的某个成员至少发生了一个异常。
使用 getNextException() 来检索已经过批处理的特定元素的异常。
2010-03-18 18:59:39,937 WARN org.hibernate.util.JDBCExceptionReporter - SQL Error: -1476, SQLState: 40506
2010-03-18 18:59:39,937 ERROR org.hibernate.util.JDBCExceptionReporter - Error for batch element #1: DB2 SQL error: SQLCODE: -1476, SQLSTATE: 40506, SQLERRMC: -964
2010-03-18 18:59:39,937 WARN org.hibernate.util.JDBCExceptionReporter - SQL Error: -99999, SQLState: null
2010-03-18 18:59:39,937 ERROR org.hibernate.util.JDBCExceptionReporter - [ibm][db2][jcc][103][10843] 在批处理期间发生了不可恢复的链断开异常。批处理被非自动终止。
2010-03-18 18:59:39,953 ERROR org.hibernate.event.def.AbstractFlushingEventListener - Could not synchronize database state with session


情景描述:
n 1 n 1 n 1
A--------->B-------->C-------->D

这4个实体对象的关系如上,在调用hibernate保存时,代码是这样写的,伪代码:

D d = new D();------------只有一个

C c = new D();
d.addC(c);
。。。。。。。(代表很多)
B b = new B();
c.addB(b);
。。。。。。。(代表很多)
A a = new A();
b.addA(a);
。。。。。。。(代表很多)

dao.saveOrUpdate(d);


b+c+d 数目在2万左右时,插入数据库记录完全正常,速度很快,就是比较吃内存。

但是在b+c+d 数目在10万左右时,就报上述的错误了,非常郁闷。请赐教。。。
...全文
5800 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
陪公主读书 2010-05-19
  • 打赏
  • 举报
回复
结贴
我用到了批量存储,在保存这么多记录时期中有一个出错(出的错可能是session失效了)就会报上述问题了。
王帆 2010-03-19
  • 打赏
  • 举报
回复
不清楚是什么情况,批量insert或者update,在commit时报错了?

先查看db2diag.log确定是什么原因导致的错误,然后才好解决。
Mr_Bean 2010-03-19
  • 打赏
  • 举报
回复
查数据库日志 db2diag.log
王帆 2010-03-19
  • 打赏
  • 举报
回复
查看db cfg中的DIAGPATH 参数
陪公主读书 2010-03-19
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 efan101 的回复:]

不清楚是什么情况,批量insert或者update,在commit时报错了?

先查看db2diag.log确定是什么原因导致的错误,然后才好解决。
[/Quote]

我是菜鸟,怎么查看db2diag.log啊?

5,889

社区成员

发帖
与我相关
我的任务
社区描述
IBM DB2 是美国IBM公司开发的一套关系型数据库管理系统,它主要的运行环境为UNIX(包括IBM自家的AIX)、Linux、IBM i(旧称OS/400)、z/OS,以及Windows服务器版本
社区管理员
  • DB2
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧