Describe the bug
In moving Lua to a module, we broke some error messages:
| Trigger Command / Action |
Redis 7.2 Output |
Valkey unstable Output |
| Missing script identifier (Any EVAL script failure) |
Includes script SHA1 hash in error. |
Omits the script SHA1 hash. (Breaks tools tracking failed scripts by SHA1). |
| redis.pcall() (Empty call) |
"ERR Please specify at least one argument for this redis lib call" |
"Please specify at least one argument for this call" |
| redis.pcall('ECHO', true) |
"ERR Lua redis lib command arguments must be strings or integers" |
"ERR Command arguments must be strings or integers" |
| redis.setresp(4) |
"ERR RESP version must be 2 or 3." |
"RESP version must be 2 or 3." |
| redis.call('nonexistent_command') |
"ERR Unknown Redis command called from script" |
"ERR Unknown command called from script" |
| redis.call('get') |
"ERR Wrong number of args calling Redis command from script" |
"ERR Wrong number of args calling command from script" |
| redis.call('subscribe', 'channel') |
"ERR This Redis command is not allowed from script" |
"ERR This Valkey command is not allowed from script" |
| pcall(redis.log, 1) |
"ERR redis.log() requires two arguments or more." |
"server.log() requires two arguments or more." |
| pcall(redis.log, 10, 'test') |
"ERR Invalid debug level." |
"Invalid log level." |
| pcall(redis.acl_check_cmd, 'nonexistent') |
"ERR Invalid command passed to redis.acl_check_cmd()" |
"ERR Invalid command passed to server.acl_check_cmd()" |
| pcall(redis.set_repl) |
"ERR redis.set_repl() requires one argument." |
"server.set_repl() requires one argument." |
| redis.call('get', 'foo') (Cluster) |
"ERR Script attempted to access a non local key in a cluster node" |
"ERR Attempted to access a non local key in a cluster node" |
Some of these are probably intentional (branding) changes. But some other ones seem changed for no reason, and some the error code is missing (no -ERR) which would break a lot of error handling logic.
To reproduce
Use EVAL to run the above on Valkey unstable.
Expected behavior
Error messages would not change, except where needed for branding.
Additional information
Any additional information that is relevant to the problem.
Describe the bug
In moving Lua to a module, we broke some error messages:
Some of these are probably intentional (branding) changes. But some other ones seem changed for no reason, and some the error code is missing (no -ERR) which would break a lot of error handling logic.
To reproduce
Use
EVALto run the above on Valkey unstable.Expected behavior
Error messages would not change, except where needed for branding.
Additional information
Any additional information that is relevant to the problem.