1 start_server
{tags
{"multi"}} {
2 test
{MUTLI
/ EXEC basics
} {
8 set v1
[r
lrange mylist
0 -1]
12 } {QUEUED QUEUED
{{a b c
} PONG
}}
22 set v3
[r
lrange mylist
0 -1]
26 test
{Nested MULTI are not allowed
} {
34 test
{MULTI where commands alter argc
/argv
} {
38 list [r
exec] [r exists myset
]
41 test
{WATCH inside MULTI is not allowed
} {
44 catch {[r watch x
]} err
49 test
{EXEC works on WATCHed key not modified
} {
57 test
{EXEC fail on WATCHed key modified
(1 key of
1 watched
)} {
66 test
{EXEC fail on WATCHed key modified
(1 key of
5 watched
)} {
75 test
{EXEC fail on WATCHed key modified by SORT with STORE even
if the result is empty
} {
79 r sort emptylist store foo
85 test
{After successful EXEC key is no longer watched
} {
97 test
{After failed EXEC key is no longer watched
} {
110 test
{It is possible to UNWATCH
} {
120 test
{UNWATCH when there is nothing watched works as expected
} {
124 test
{FLUSHALL is able to touch the watched keys
} {
133 test
{FLUSHALL does not touch non affected keys
} {
142 test
{FLUSHDB is able to touch the watched keys
} {
151 test
{FLUSHDB does not touch non affected keys
} {
160 test
{WATCH is able to remember the DB a key belongs to
} {
172 test
{WATCH will consider touched keys target of EXPIRE
} {
182 test
{WATCH will not consider touched expired keys
} {
193 test
{DISCARD should clear the WATCH dirty flag on the client
} {
203 test
{DISCARD should UNWATCH all the keys
} {