diff options
Diffstat (limited to 'src/server.h')
-rw-r--r-- | src/server.h | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/src/server.h b/src/server.h index 6ff882d4c..11629c718 100644 --- a/src/server.h +++ b/src/server.h @@ -1536,7 +1536,8 @@ struct redisServer { list *clients_pending_write; /* There is to write or install handler. */ list *clients_pending_read; /* Client has pending read socket buffers. */ list *slaves, *monitors; /* List of slaves and MONITORs */ - client *current_client; /* Current client executing the command. */ + client *current_client; /* The client that triggered the command execution (External or AOF). */ + client *executing_client; /* The client executing the current command (possibly script or module). */ /* Stuff for client mem eviction */ clientMemUsageBucket* client_mem_usage_buckets; @@ -1873,6 +1874,7 @@ struct redisServer { int daylight_active; /* Currently in daylight saving time. */ mstime_t mstime; /* 'unixtime' in milliseconds. */ ustime_t ustime; /* 'unixtime' in microseconds. */ + mstime_t cmd_time_snapshot; /* Time snapshot of the root execution nesting. */ size_t blocking_op_nesting; /* Nesting level of blocking operation, used to reset blocked_last_cron. */ long long blocked_last_cron; /* Indicate the mstime of the last time we did cron jobs from a blocking operation */ /* Pubsub */ @@ -1912,7 +1914,6 @@ struct redisServer { int cluster_drop_packet_filter; /* Debug config that allows tactically * dropping packets of a specific type */ /* Scripting */ - client *script_caller; /* The client running script right now, or NULL */ mstime_t busy_reply_threshold; /* Script / module timeout in milliseconds */ int pre_command_oom_state; /* OOM before command (script?) was started */ int script_disable_deny_script; /* Allow running commands marked "no-script" inside a script. */ @@ -2601,7 +2602,7 @@ void addReplyStatusFormat(client *c, const char *fmt, ...); /* Client side caching (tracking mode) */ void enableTracking(client *c, uint64_t redirect_to, uint64_t options, robj **prefix, size_t numprefix); void disableTracking(client *c); -void trackingRememberKeys(client *c); +void trackingRememberKeys(client *tracking, client *executing); void trackingInvalidateKey(client *c, robj *keyobj, int bcast); void trackingScheduleKeyInvalidation(uint64_t client_id, robj *keyobj); void trackingHandlePendingKeyInvalidations(void); |