diff --git a/src/redis.h b/src/redis.h index e8008b57f..bc2b2c379 100644 --- a/src/redis.h +++ b/src/redis.h @@ -799,8 +799,8 @@ struct redisServer { redisClient *lua_client; /* The "fake client" to query Redis from Lua */ redisClient *lua_caller; /* The client running EVAL right now, or NULL */ dict *lua_scripts; /* A dictionary of SHA1 -> Lua scripts */ - long long lua_time_limit; /* Script timeout in seconds */ - long long lua_time_start; /* Start time of script */ + mstime_t lua_time_limit; /* Script timeout in milliseconds */ + mstime_t lua_time_start; /* Start time of script, milliseconds time */ int lua_write_dirty; /* True if a write command was called during the execution of the current script. */ int lua_random_dirty; /* True if a random command was called during the diff --git a/src/scripting.c b/src/scripting.c index e2ce60765..d88078967 100644 --- a/src/scripting.c +++ b/src/scripting.c @@ -441,7 +441,7 @@ void luaMaskCountHook(lua_State *lua, lua_Debug *ar) { REDIS_NOTUSED(ar); REDIS_NOTUSED(lua); - elapsed = (ustime()/1000) - server.lua_time_start; + elapsed = mstime() - server.lua_time_start; if (elapsed >= server.lua_time_limit && server.lua_timedout == 0) { redisLog(REDIS_WARNING,"Lua slow script detected: still in execution after %lld milliseconds. You can try killing the script using the SCRIPT KILL command.",elapsed); server.lua_timedout = 1; @@ -900,7 +900,7 @@ void evalGenericCommand(redisClient *c, int evalsha) { * We set the hook only if the time limit is enabled as the hook will * make the Lua script execution slower. */ server.lua_caller = c; - server.lua_time_start = ustime()/1000; + server.lua_time_start = mstime(); server.lua_kill = 0; if (server.lua_time_limit > 0 && server.masterhost == NULL) { lua_sethook(lua,luaMaskCountHook,LUA_MASKCOUNT,100000);