问题描述:
我们的生产环境使用阿里云 Tair(兼容 Redis),在 JDK 21 + Spring Boot 3.3.5 + Redisson 3.35.0 环境下,Redisson 的看门狗机制(Watchdog)无法正常工作。
错误信息:
ERR bad lua script for redis cluster, first parameter of redis.call/redis.pcall must be a single literal string.
根本原因:
Redisson 看门狗的 Lua 脚本使用 redis.call(ARGV[4], KEYS[2], ARGV[1]) 方式调用命令,而阿里云 Tair 的 script_check_enable=1 参数要求第一个参数必须是字面量字符串(如 redis.call('PUBLISH', ...))。
影响范围:
明确请求:
技术栈详情:
业务影响:
此问题导致分布式锁功能异常,影响核心业务同步流程,属于高优先级生产问题。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
阿里云NoSQL数据库提供了一种灵活的数据存储方式,可以支持各种数据模型,包括文档型、图型、列型和键值型。此外,它还提供了一种分布式的数据处理方式,可以支持高可用性和容灾备份。包含Redis社区版和Tair、多模数据库 Lindorm、MongoDB 版。