NC Cloud 使用华为云postegresql增强版报错“ERROR: current transaction is aborted, commands ignored until end of transaction block”

已邀请:

场景一:业务操作报错,跟踪问题,解决报错


postegresql如果在同一事务中出现报错的sql,后续的SQL执行均会报错,且最开始的错误可能不会抛出,需要进行分析定位。


解决:通过录制SPR,会展示出全部的SQL,包括最开始报错的SQL,处理完后即可。

/uploads/answer/20200812/6e2fbc5ee18364698213ff9fa0d9c997.png

/uploads/answer/20200812/77b6db9cc01c560e015c01fd97b16a54.png


场景二:升库后轻量端物料节点的按钮看不到、报表公示里看不到“使用按钮”


原因:建库脚本中部分存在主键冲突的SQL,因PG的事务回滚机制,脚本中的一个SQL报错导致整个脚本的SQL被回滚,进而导致部分按钮脚本没有执行。


解决:重新升级基础数据,流程如下


1、修改数据库版本


如为1909版本,执行如下

update sm_product_version set version='NC Cloud 1908' where productcode = '1014';


如为2020.05版本,执行如下

update sm_product_version set version='NC Cloud 2020.04' where productcode = '1014';  


2、配置数据库连接参数,增加参数配置如下图:

增加参数为:?autosave=always

/uploads/answer/20200928/3500cfc3f666cd3d2bbfec0476aff16d.png

参数增加后,重启环境生效


3、升级数据库,登录超级管理员root用户,依次进入系统管理、升级系统、选择“基础数据”模块,“开始

安装”,进行升库

4、升库完毕后,务必去掉该参数。并重启环境。  


至此,上述场景二的问题已解决

要回复问题请先登录注册