Closed linora closed 3 months ago
你好,二次开发问题还请自行解决
您好,其实也非二次开发了
因为之前的通知消息中 url 就不对,里面加了 workflow 节,导致点击 url 不能直接跳转到工单详情页,所以我才自行修改。
其他脚全部没有动过呢
还好我是 DBA,目前发现应该是个 bug。
问题: 1、mysql 层面的 workflow_audit 表 audit_id 列是自增列。 2、innodb_autoinc_lock_mode 配置问题,可能导致 audit_id 内存中自增了,但未持久化,重启后自增丢失。 3、以上,会导致 authid_id 永远落后真实 authid_id,所以通知中的 url 永远是旧的工单 url。
建议解决方式:不依赖 mysql 自增特性,有个全局统一的 audit_id 生成策略。
解决: 参照 web 中最新工单 url 中 authid_id,重置 workflow_audit 表的自增值:
alter table workflow_audit AUTO_INCREMENT=NNNN;
欢迎pr或更新文档提醒使用 archery 的人注意mysql 配置
重现步骤
本人修改了 sql/notify.py 脚本源码
重启 archery 后发现通知消息中拿到的 audit_id 是旧的。
预期外的结果
通知消息中显示正确的 url
日志文本
No response
版本
1.8
部署方式
Docker
是否还有其他可以辅助定位问题的信息?比如数据库版本等
No response