tree 90bac6477beced3cf7aa7aac5532e7231446f9a4
parent f90838b71a3c7f84e1d8b4ff85760a35d60c6910
author Thierry FOURNIER <tfournier@exceliance.fr> 1425647124 +0100
committer Willy Tarreau <w@1wt.eu> 1425919672 +0100
encoding latin1

BUG/MAJOR: lua: some function are not yieldable, the forced yield causes errors

The hook function called each nth Lua instructions just
do a yield. Sometimes this yield is not allowed, because
some functions are not compatible.

The Lua-5.3 permits to known if the yield is avalaible with
the function lua_isyieldable().

If the processing is interrupted in non yieldable state,
we try to execute a yield asap. The yield will be may
available at the end of the non-yieldable currently
executed function. So, we require interrupt at the end
of the current function.

But, Lua cannot yield when its returning from a function,
so, we can fix the interrupt hook to 1 instruction,
expecting that the function is finnished.

During this time, the execution timeout is always checked.
