[Tarantool-patches] [PATCH] test: enable JIT for Lua Fun chain iterator back

Alexander Turenko alexander.turenko at tarantool.org
Mon Jul 26 19:25:26 MSK 2021


On Sat, Jul 24, 2021 at 08:24:54PM +0300, Igor Munkin wrote:
> This patch reverts the temporary fix introduced in commit
> 5fa7ded22c1f6b5ab2ed78563538d234776bac76 ("test: disable JIT for Lua Fun
> chain iterator") since the issues with invalid traces generation for
> <fun.chain> iterator are resolved and JIT can be enabled back then.
> 
> Follows up #4252
> Follows up #5118
> 
> Signed-off-by: Igor Munkin <imun at tarantool.org>
> ---
> 
> Related issues:
> * https://github.com/tarantool/tarantool/issues/5118
> * https://github.com/tarantool/tarantool/issues/4252
> * https://github.com/LuaJIT/LuaJIT/issues/584
> Branch: https://github.com/tarantool/tarantool/tree/imun/lj-584-bad-renames-for-sunk-values
> CI: https://github.com/tarantool/tarantool/commit/b35e2ee
> 
>  test/box-tap/key_def.test.lua | 7 -------
>  1 file changed, 7 deletions(-)
> 
> diff --git a/test/box-tap/key_def.test.lua b/test/box-tap/key_def.test.lua
> index 41eed2191..2ade668a5 100755
> --- a/test/box-tap/key_def.test.lua
> +++ b/test/box-tap/key_def.test.lua
> @@ -5,13 +5,6 @@ local ffi = require('ffi')
>  local json = require('json')
>  local fun = require('fun')
>  
> --- XXX fix for gh-4252: to prevent invalid trace assembling (see
> --- https://github.com/LuaJIT/LuaJIT/issues/584) disable JIT for
> --- <fun.chain> iterator (i.e. <chain_gen_r1>). Since the function
> --- is local, the dummy chain generator is created to obtain the
> --- function GC object.
> -jit.off(fun.chain({}).gen)
> -
>  local key_def_lib = require('key_def')
>  
>  local usage_error = 'Bad params, use: key_def.new({' ..

I cannot say much about the fix itself. So I'll just ensure that the
test is stable now.

Please, also remove the test from the fragile list in
test/box-tap/suite.ini. After this change the patch LGTM.

How I tested:

$ ./test/test-run.py $(yes box-tap/key_def.test.lua | head -n 1000)

I run it with and without c4bbd4013711c33c3ced9c2e8ac31a80992d2cf0
("luajit: bump new version: Detect inconsistent renames even in the
presence of sunk values.").

Before the patch it usually fails. After applying the patch: nope, works
fine.

WBR, Alexander Turenko.


More information about the Tarantool-patches mailing list