基础资料数据存在缓存,缓存管理清除后正常
基础资料数据存在缓存,缓存管理清除后正常
1、基础资料以视图作为数据源,视图数据发生改变时,基础资料存在缓存
问题现象
排查步骤
可通过勾选“禁用缓存”属性解决。
2、通过SQL更新基础资料数据,结果系统内对应基础资料未同步更新
问题现象
二开插件通过SQL脚本修改基础资料数据,但是前台对应基础资料未同步更新。
排查步骤
二开插件修改数据同时,也需要通过代码清除对应基础资料缓存,具体可参考:
https://wenku.my7c.com/article/185759531572440832?productLineId=1&isKnowledge=2
3、二开插件代码清除基础资料数据缓存,但是不生效
问题现象
调用CacheUtil.ClearCache(ctx.GetAreaCacheKey(), tableName)方法清除缓存不成功。
排查步骤
CacheUtil.ClearCache() 方法第一个参数是【区AreaCacheKey】隔离标识,常见的传参有 ctx.GetAreaCacheKey() 跟 ctx.GetDBCacheKey() 两个。
反编译看的话,ctx.GetAreaCacheKey() 代表的是:DBId + IsMultiOrg + UserLocale.LCID(账套ID+是否多组织+登录语言ID),而ctx.GetDBCacheKey() 代表的则是:DBId + IsMultiOrg(账套ID+是否多组织)。对比两者的差异,区别在于是否区分多语言,ctx.GetDBCacheKey()没有多语言隔离。
早期版本,标准产品数据缓存的Area区,用的是 ctx.GetAreaCacheKey() 作为隔离标识,直到22年9月份版本开始不区分多语言,原因是数据缓存默认加载全部语言数据,不存在语言的区别,出于性能优化考虑,数据缓存改用 ctx.GetDBCacheKey() 作为Area区。
基础资料数据存在缓存,缓存管理清除后正常
基础资料数据存在缓存,缓存管理清除后正常1、基础资料以视图作为数据源,视图数据发生改变时,基础资料存在缓存问题现象排查步骤 可通...
点击下载文档
本文2024-09-16 17:44:26发表“云星空知识”栏目。
本文链接:https://wenku.my7c.com/article/kingdee-k3cloud-17644.html
您需要登录后才可以发表评论, 登录登录 或者 注册
最新文档
热门文章