redict/tests/modules
guybe7 1df5bb5687
Make sure we do not propagate nested MULTI/EXEC (#8097)
One way this was happening is when a module issued an RM_Call which would inject MULTI.
If the module command that does that was itself issued by something else that already did
added MULTI (e.g. another module, or a Lua script), it would have caused nested MULTI.

In fact the MULTI state in the client or the MULTI_EMITTED flag in the context isn't
the right indication that we need to propagate MULTI or not, because on a nested calls
(possibly a module action called by a keyspace event of another module action), these
flags aren't retained / reflected.

instead there's now a global propagate_in_transaction flag for that.

in addition to that, we now have a global in_eval and in_exec flags, to serve the flags
of RM_GetContextFlags, since their dependence on the current client is wrong for the same
reasons mentioned above.
2020-12-06 13:14:18 +02:00
..
auth.c Fixed some documentation 2019-12-17 07:49:21 +00:00
blockedclient.c Unified MULTI, LUA, and RM_Call with respect to blocking commands (#8025) 2020-11-17 18:58:55 +02:00
blockonkeys.c Fix memory corruption in moduleHandleBlockedClients 2020-04-01 12:53:26 +03:00
commandfilter.c Make module tests pass with valgrind, and fix a leak in diskless load 2019-10-24 09:45:25 +03:00
datatype.c Improve RM_ModuleTypeReplaceValue() API. 2019-12-12 18:50:11 +02:00
fork.c Moved RMAPI_FUNC_SUPPORTED location such that it will be visible to modules (#8037) 2020-11-09 10:46:23 +02:00
getkeys.c Modules: fix RM_GetCommandKeys API. (#7901) 2020-10-11 18:10:55 +03:00
hooks.c Add Module API for version and compatibility checks (#7865) 2020-10-11 17:21:58 +03:00
infotest.c Add RM_ServerInfoGetFieldUnsigned 2019-11-04 08:50:29 +02:00
keyspace_events.c Make sure we do not propagate nested MULTI/EXEC (#8097) 2020-12-06 13:14:18 +02:00
Makefile Modules callbacks for lazy free effort, and unlink (#7912) 2020-11-16 10:34:04 +02:00
misc.c Add Module API for version and compatibility checks (#7865) 2020-10-11 17:21:58 +03:00
propagate.c Modify the propagate unit test to show more cases. 2020-03-31 12:04:06 +02:00
scan.c Fix RM_ScanKey module api not to return int encoded strings 2020-06-14 11:20:15 +03:00
test_lazyfree.c Modules callbacks for lazy free effort, and unlink (#7912) 2020-11-16 10:34:04 +02:00
testrdb.c fix crash in module short read test 2019-12-02 19:17:35 +02:00
timer.c Add timer module API tests. (#8041) 2020-11-11 22:57:33 +02:00