diff options
| author | Mitja Felicijan <mitja.felicijan@gmail.com> | 2026-01-21 22:40:55 +0100 |
|---|---|---|
| committer | Mitja Felicijan <mitja.felicijan@gmail.com> | 2026-01-21 22:40:55 +0100 |
| commit | 5d8dfe892a2ea89f706ee140c3bdcfd89fe03fda (patch) | |
| tree | 1acdfa5220cd13b7be43a2a01368e80d306473ca /examples/redis-unstable/src/commands/msetex.json | |
| parent | c7ab12bba64d9c20ccd79b132dac475f7bc3923e (diff) | |
| download | crep-5d8dfe892a2ea89f706ee140c3bdcfd89fe03fda.tar.gz | |
Add Redis source code for testing
Diffstat (limited to 'examples/redis-unstable/src/commands/msetex.json')
| -rw-r--r-- | examples/redis-unstable/src/commands/msetex.json | 124 |
1 files changed, 124 insertions, 0 deletions
diff --git a/examples/redis-unstable/src/commands/msetex.json b/examples/redis-unstable/src/commands/msetex.json new file mode 100644 index 0000000..67401ed --- /dev/null +++ b/examples/redis-unstable/src/commands/msetex.json @@ -0,0 +1,124 @@ +{ + "MSETEX": { + "summary": "Atomically sets multiple string keys with a shared expiration in a single operation. Supports flexible argument parsing where condition and expiration flags can appear in any order.", + "complexity": "O(N) where N is the number of keys to set.", + "group": "string", + "since": "8.4.0", + "arity": -4, + "function": "msetexCommand", + "command_flags": [ + "WRITE", + "DENYOOM" + ], + "acl_categories": [ + "STRING" + ], + "command_tips": [ + "REQUEST_POLICY:MULTI_SHARD", + "RESPONSE_POLICY:ALL_SUCCEEDED" + ], + "key_specs": [ + { + "flags": [ + "OW", + "UPDATE" + ], + "begin_search": { + "index": { + "pos": 1 + } + }, + "find_keys": { + "keynum": { + "keynumidx": 0, + "firstkey": 1, + "step": 2 + } + } + } + ], + "reply_schema": { + "oneOf": [ + { + "description": "No key was set (at least one key failed).", + "const": 0 + }, + { + "description": "All the keys were set.", + "const": 1 + } + ] + }, + "arguments": [ + { + "name": "numkeys", + "type": "integer" + }, + { + "name": "data", + "type": "block", + "multiple": true, + "arguments": [ + { + "name": "key", + "type": "key", + "key_spec_index": 0 + }, + { + "name": "value", + "type": "string" + } + ] + }, + { + "name": "condition", + "type": "oneof", + "optional": true, + "arguments": [ + { + "name": "nx", + "type": "pure-token", + "token": "NX" + }, + { + "name": "xx", + "type": "pure-token", + "token": "XX" + } + ] + }, + { + "name": "expiration", + "type": "oneof", + "optional": true, + "arguments": [ + { + "name": "seconds", + "type": "integer", + "token": "EX" + }, + { + "name": "milliseconds", + "type": "integer", + "token": "PX" + }, + { + "name": "unix-time-seconds", + "type": "unix-time", + "token": "EXAT" + }, + { + "name": "unix-time-milliseconds", + "type": "unix-time", + "token": "PXAT" + }, + { + "name": "keepttl", + "type": "pure-token", + "token": "KEEPTTL" + } + ] + } + ] + } +} |
