
> 用户在使用系统时会偶发出现流程中的自动节点处于闪烁状态或流程审批后没有向下流转的问题。


此时查看该节点的错误日志也是为空。

上述问题的出现可以推断为,该节点中的任务或后置脚本存在某些方法调用出现问题,导致后台事务的阻塞。
后台事务是要分配到实例上执行的,当实例上存在某个事务一直处于执行中状态,则后续分配到该实例上的事务都会排队等待前方的事务执行完成,自身一直得不到执行,此时这些事务状态为已就绪或已接收状态。
由于工作流运行也是通过后台事务执行的,所以上述的阻塞也可能导致工作流事务不能执行,这时候会出现单据提交触发不了流程和审批后流程没有向下流转的情况。
- 【临时方案】:
把执行中的事务杀死
步骤1:在查询分析器把执行中的事务改为已失败
SELECT * FROM T_job_inst where FSTATE ='Running' and FTITLE LIKE '%事务主题%' ;
update T_job_inst set FSTATE ='Failed' where FSTATE ='Running' and FTITLE LIKE '%事务主题%' ;
步骤2:重启服务器
- 【根本解决方案】:
在执行【临时方案】前收集线程日志分析