EAS 工作流缓存不一致问题原创
金蝶云社区-id_bao
id_bao
9人赞赏了该文章 693次浏览 未经作者许可,禁止转载编辑于2023年09月13日 16:36:15
封面

写在前面,可更新下面补丁解决问题:

861版本:PT172285

850版本:PT173361

820版本:PT173183

如果综合考虑对打补丁有疑问,可以从最下面的附件中下载私包。


    

最近工作流又出现了在各实例之间缓存不能同步的问题,表现为流程变量丢失;任务,节点,流程状态在各实例之间状态不一致等。

    刚好主干可以重现问题,跟踪了下发现了问题原因,原因和集成云在EAS端的代码有关系分析过程见链接:https://fantasy-dinner-f11.notion.site/fabe8eaf785a4fa187207bd97a48a13e

    针对现场问题,如何验证?

    1,去查询分析器执行如下 服务器端脚本,这个脚本是去获取缓存同步服务的 同步命令:

var c = java.lang.Class.forName("com.kingdee.cbos.process.vm.utils.group.MessageServer");
var field = c.getDeclaredField("services");
field.setAccessible(true);
field.get(c).toString()

  2,查看返回结果,返回结果会有2种情况

        第一种,同步命令中包含【工作流的缓存同步命令】,没有问题:

工作流的缓存同步命令:
CACHE_EXPIRE=com.kingdee.cbos.process.vm.utils.cache.MCastListener$CacheExpireSvc
CACHE_CLEAR=com.kingdee.cbos.process.vm.utils.cache.MCastListener$CacheClearSvc

如下两种形式:

      

上传图片

  ----

上传图片


    第二种,同步命令中 不包含【工作流的缓存同步命令】,有问题


上传图片


3,处理方式,打工作流私包做兼容即可,私包见附件

赞 9