diff options
author | guybe7 <guy.benoish@redislabs.com> | 2022-12-20 13:21:50 +0530 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-12-20 09:51:50 +0200 |
commit | 9c7c6924a019b902996fc4b608541f475daa649d (patch) | |
tree | dbf8d847864a1a363e5e9cbb984fad82b4c491d3 /src/tracking.c | |
parent | 669688a342d5c1697c737b23f456e1750b46f0ff (diff) | |
download | redis-9c7c6924a019b902996fc4b608541f475daa649d.tar.gz |
Cleanup: Get rid of server.core_propagates (#11572)
1. Get rid of server.core_propagates - we can just rely on module/call nesting levels
2. Rename in_nested_call to execution_nesting and update the comment
3. Remove module_ctx_nesting (redundant, we can use execution_nesting)
4. Modify postExecutionUnitOperations according to the comment (The main purpose of this PR)
5. trackingHandlePendingKeyInvalidations: Check the nesting level inside this function
Diffstat (limited to 'src/tracking.c')
-rw-r--r-- | src/tracking.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/src/tracking.c b/src/tracking.c index d62eb736b..ba7406e6c 100644 --- a/src/tracking.c +++ b/src/tracking.c @@ -415,6 +415,10 @@ void trackingInvalidateKey(client *c, robj *keyobj, int bcast) { void trackingHandlePendingKeyInvalidations(void) { if (!listLength(server.tracking_pending_keys)) return; + /* Flush pending invalidation messages only when we are not in nested call. + * So the messages are not interleaved with transaction response. */ + if (server.execution_nesting) return; + listNode *ln; listIter li; |