我使用Microsoft.Web.RedisSessionStateProvider作为sessionState Provider,它运行许多lua脚本。但我的应用程序捕获到此异常:



redis source code中,开发人员说:

static int inuse = 0;   /* Recursive calls detection. */

/* By using Lua debug hooks it is possible to trigger a recursive call
 * to luaRedisGenericCommand(), which normally should never happen.
 * To make this function reentrant is futile and makes it slower, but
 * we should at least detect such a misuse, and abort. */
if (inuse) {
    char *recursion_warning =
        "luaRedisGenericCommand() recursive call detected. "
        "Are you doing funny stuff with Lua debug hooks?";
    redisLog(REDIS_WARNING,"%s",recursion_warning);
    luaPushError(lua,recursion_warning);
    return 1;
}
inuse++;

但我不知道如何检测此递归以及如何避免此错误!

最佳答案

回收应用程序池并清除Redis缓存,它将正常运行..

09-11 19:20