【问题描述】
达梦7数据库,流程流转过程中,不定时出现Locker time out. id=(流程实例号)的异常,并且已经走过的流程实例和工作项数据会被回滚,但是流程图却正常,工作项表里面的数据会被回滚。重启后,流程图显示会回滚到上一节点。
【解决方案】
使用c3p0连接池,在user-config.xml中,新增如下属性:
<configValue key="validationQuery"> select 1 ;</configValue>
<configValue key="testOnBorrow"> false</configValue>
<configValue key="testWhileIdle"> true</configValue>
<configValue key="testOnReturn"> false</configValue>
压测50并发一小时,commit后事务状态均为“STATUS_NO_TRANSACTION”,锁表概率大大降低,但还会零星出现。
这个方案在达梦7环境下优化有效。
【原文链接】
http://doc.primeton.com/pages/viewpage.action?pageId=61925806