基础数据迁移失败
按文档检查升级步骤,是否有操作不到位的地方,确保迁移前,4.0系统是正常可用且规则图能打开的
修复方案:进行重新迁移前,将4.0目标服务器的knowledge库中的tb_rule_transform以及tb_rule_transform_check表清空
工具链接:https://nextcloud.ipharmacare.net/index.php/f/18271505
机评报错提示: ArrayIndexOutOfBoundException: 2
3.3旧点评系统, 点评阶段显示警示类型参数的格式, 和4.0版本的参数格式不一致, 导致机评出现报错,如:在3.3中配置成<br>||5|全部,升级到4.0后,跑点评根据该配置进行切割是出现问题,发生报错
修复方案:在4.0系统中重新修改该参数为4.0版本标准格式, 即可
基础数据迁移后auth_user表id为负数
旧的迁移工具在自增上存在BUG,当auth_user表只存在-100、-200、-300出厂用户数据时直接做迁移,会触发
修复方案:需要使用最新迁移工具,重新迁移,迁移前先将异常数据删除
工具链接:https://nextcloud.ipharmacare.net/index.php/f/18271505
基础数据迁移后引擎服务启动失败
原因:全新安装4.0系统,0930版本后一键包已经不含知识库数据
修复方案:激活系统后,需要先导入知识包,再重启用户中心、知识建设和引擎服务
3.3升级4.0的顺序:全新安装4.0系统(未激活)->进行基础数据迁移->激活系统,导入知识包,重启用户中心、知识建设和引擎->规则迁入
若基础数据迁移之前已经激活了系统,需要修改下zone_id,与3.3系统保持一致
基础数据迁移后tb_product_drug表存在数据缺失(自定义添加的产品与挂载药品分类的关联关系丢失)导致引擎报空指针异常
需要进行数据修复:<br>SELECT * FROM tb_product_drug WHERE product_id LIKE 'c_0%';<br>SELECT * FROM tb_product WHERE id LIKE 'c_0%';<br>SELECT t.id product_id, t1.id drug_id, ypmc drug_name, code drug_code ,-200, NOW()<br>FROM tb_product t, tb_drug t1 WHERE t1.ypmc = t.drugCategoryName AND t.id LIKE 'c_0%'<br>INSERT INTO tb_product_drug (product_id,drug_id,drug_name,drug_code,modify_user,modify_date)<br>SELECT t.id product_id, t1.id drug_id, ypmc drug_name, code drug_code ,-200, NOW()<br>FROM tb_product t, tb_drug t1 WHERE t1.ypmc = t.drugCategoryName AND t.id LIKE 'c_0%'<br>
数据修复后重启知识建设和引擎服务,再重跑引擎
自定义管理规则没有迁移成功
1. 检查规则校验文档以及迁移文档,该规则是否存在校验失败or迁移失败记录
若存在失败记录,按要求进行规则修改,再进行迁移操作
2. 由于各种原因需要重新迁移规则
先清理4.0目标库的transfrom两张表的数据
重新进行规则校验和规则迁移操作
若之前已经做了规则规整操作,则需要把表删除,重建后,重启服务工具
3.3升级到231222后登录不进去
问题原因:一般是基础数据迁移后,漏刷脚本导致【231222版本用户登录鉴权方式有变更,老版本数据迁移后需要手动刷脚本更新用户表数据】
解决方案:执行数据修复sql,并重启用户中心和服务工具
UPDATE `ipharmacare_systemcenter`.`auth_user` SET `password` = 'Iu7BMWnzsq+Bdm26bSrImN5wEm/4l0TWiXgGCLRopL/uxa4dyOwaFFc5FPYd3m+Y' WHERE `uid` = -300;<br>UPDATE `ipharmacare_systemcenter`.`auth_user` SET `password` = 'KLP8Qs/wyWkdhebqho5fWS9UX5gMF640hvG4cWXfXlvuxa4dyOwaFFc5FPYd3m+Y' WHERE `uid` = -200;<br>UPDATE `ipharmacare_systemcenter`.`auth_user` SET `password` = 'KLP8Qs/wyWkdhebqho5fWS9UX5gMF640hvG4cWXfXlvuxa4dyOwaFFc5FPYd3m+Y' WHERE `uid` = -100;