-
-
Notifications
You must be signed in to change notification settings - Fork 304
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Lua stack and prefetch variables #434
Lua stack and prefetch variables #434
Conversation
Delayed queue is not tuneable so you could end up fetching the almost the limit of the LUA stack size and have a server crash in redis because when redis cannot perform lua_checkstack it ends with a serverPanic as you can see [h Signed-off-by: Mario de Frutos <mario@defrutos.org>
We want to be able to define an static value for our LUA stack so we don't need to rely on dynamic calculations although if we don't pass that new env. variable we're going to check the max stack value dynamically Signed-off-by: Mario de Frutos <mario@defrutos.org>
There are some possible stack overflow problems if we have a high number of workers and all of the unpack with the maximum limit of the stack. This change reduces to half that value so we don't incur in the stack overflow. See Bogdanp#433 Signed-off-by: Mario de Frutos <mario@defrutos.org>
Signed-off-by: Mario de Frutos <mario@defrutos.org>
4a5ccea
to
8d3050d
Compare
@Bogdanp I've tried to run I've been getting this error in Mac and Ubuntu inside docker:
and looks like tox is not installing the necessary dependencies. Anything I'm missing? |
Thanks! I've merged the change with rebase. Re. |
We've found that with a great number of delayed messages, using the max LUA stack in the prefetch for delayed messages and multiple workers you can end up having stack overflow in Redis and crashing the LUA script so this PR intends to minimize that situation:
Related to #433