From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from [87.239.111.99] (localhost [127.0.0.1]) by dev.tarantool.org (Postfix) with ESMTP id 43DEAE32059; Tue, 24 Sep 2024 13:33:12 +0300 (MSK) DKIM-Filter: OpenDKIM Filter v2.11.0 dev.tarantool.org 43DEAE32059 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=tarantool.org; s=dev; t=1727173992; bh=Batie25DTincAYx24CaKnhr69emnxdkqZ4CvkHiooZs=; h=To:Date:In-Reply-To:References:Subject:List-Id:List-Unsubscribe: List-Archive:List-Post:List-Help:List-Subscribe:From:Reply-To:Cc: From; b=XykIPKVg1mJpDxrK4m+vbMrPDZTzBOk7vJ1bg2qp3LcZ+1FqpyntQB/cip1UvDdcR kgwf+yLP/15it0xYilMZZKsrbKDw2O1VqhVWl6vypINYTCjH3Y2yq82y3VM5H3Kl3E fbDMbNb8OaYCHQGGmgTZLCltgR3Y2CrPbvS69Jn4= Received: from smtp48.i.mail.ru (smtp48.i.mail.ru [95.163.41.86]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by dev.tarantool.org (Postfix) with ESMTPS id 8D0A3E32059 for ; Tue, 24 Sep 2024 13:30:17 +0300 (MSK) DKIM-Filter: OpenDKIM Filter v2.11.0 dev.tarantool.org 8D0A3E32059 Received: by smtp48.i.mail.ru with esmtpa (envelope-from ) id 1st2oB-000000024Sz-3ngX; Tue, 24 Sep 2024 13:30:16 +0300 To: Maxim Kokryashkin , Sergey Bronnikov Date: Tue, 24 Sep 2024 13:29:51 +0300 Message-ID: <746090ddd45350e52ecd3847758c0fd51cba23df.1727172936.git.skaplun@tarantool.org> X-Mailer: git-send-email 2.46.0 In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Mailru-Src: smtp X-4EC0790: 10 X-7564579A: B8F34718100C35BD X-77F55803: 4F1203BC0FB41BD968D81A599CAF0ABB73F766E43C204C321F04E7B7F71F52B2182A05F538085040B89DCB15077047F7F378A8CA21F699D6A66066EEBD15FD29136038D1A3840DCD6934EFD898326DC2 X-7FA49CB5: FF5795518A3D127A4AD6D5ED66289B5278DA827A17800CE76D9A64DA33E5B915EA1F7E6F0F101C67BD4B6F7A4D31EC0BCC500DACC3FED6E28638F802B75D45FF8AA50765F7900637525B22DCF689D4638638F802B75D45FF36EB9D2243A4F8B5A6FCA7DBDB1FC311F39EFFDF887939037866D6147AF826D8610D4A79A2B3D97C47D5332523126BA19E676B61B6F9C562CC7F00164DA146DAFE8445B8C89999728AA50765F79006370B730A9793D99025389733CBF5DBD5E9C8A9BA7A39EFB766F5D81C698A659EA7CC7F00164DA146DA9985D098DBDEAEC85FF72824B19451C6F6B57BC7E6449061A352F6E88A58FB86F5D81C698A659EA7E827F84554CEF5019E625A9149C048EE9ECD01F8117BC8BEE2021AF6380DFAD18AA50765F790063735872C767BF85DA227C277FBC8AE2E8B53A69B3AC30C7B9475ECD9A6C639B01B4E70A05D1297E1BBCB5012B2E24CD356 X-C1DE0DAB: 0D63561A33F958A54AF181EF0DF3331A5002B1117B3ED696DF35A3A1FE5F44BE886DC9BC01168B20823CB91A9FED034534781492E4B8EEADB71243024C627CEAC79554A2A72441328621D336A7BC284946AD531847A6065A535571D14F44ED41 X-C8649E89: 1C3962B70DF3F0ADE00A9FD3E00BEEDF3FED46C3ACD6F73ED3581295AF09D3DF87807E0823442EA2ED31085941D9CD0AF7F820E7B07EA4CFE40F34A32F0796C9BCB4C997AE2011350612FD715E1B74EB9A1E30884DF6B4801EB2640544212C89A4322FFB9F042FEF1034D4B37F57B558D27CCE5B6EF5317208C28707D9819805C226CC413062362A913E6812662D5F2A5EAB5682573093F7837F15F2B5E4A70B33F2C28C22F508233FCF178C6DD14203 X-D57D3AED: 3ZO7eAau8CL7WIMRKs4sN3D3tLDjz0dLbV79QFUyzQ2Ujvy7cMT6pYYqY16iZVKkSc3dCLJ7zSJH7+u4VD18S7Vl4ZUrpaVfd2+vE6kuoey4m4VkSEu530nj6fImhcD4MUrOEAnl0W826KZ9Q+tr5ycPtXkTV4k65bRjmOUUP8cvGozZ33TWg5HZplvhhXbhDGzqmQDTd6OAevLeAnq3Ra9uf7zvY2zzsIhlcp/Y7m53TZgf2aB4JOg4gkr2biojamSMdo1tbG/VOoADqh7tvg== X-DA7885C5: 92AC3ACD8FEF9B32F255D290C0D534F9BB5A70A1B3D7B3A30775427B3283B84B99F93631D9ED52B55B1A4C17EAA7BC4BEF2421ABFA55128DAF83EF9164C44C7E X-Mailru-Sender: 689FA8AB762F7393C6D0B12EA33CAA9BCAEBD0AB57A45B80598E7FB0904C86B354B24ACBE5D081A4E49D44BB4BD9522A059A1ED8796F048DB274557F927329BE89D5A3BC2B10C37545BD1C3CC395C826B4A721A3011E896F X-Mras: Ok Subject: [Tarantool-patches] [PATCH v2 luajit 6/7] test: skip flaky tests with enabled table bump X-BeenThere: tarantool-patches@dev.tarantool.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: Tarantool development patches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , From: Sergey Kaplun via Tarantool-patches Reply-To: Sergey Kaplun Cc: tarantool-patches@dev.tarantool.org Errors-To: tarantool-patches-bounces@dev.tarantool.org Sender: "Tarantool-patches" Profilers tests with LUAJIT_ENABLE_TABLE_BUMP are flaky due to the bug in the TDUP patching. Disable them for now. --- test/tarantool-tests/CMakeLists.txt | 6 ++++++ .../profilers/gh-5688-tool-cli-flag.test.lua | 2 ++ .../gh-5813-resolving-of-c-symbols.test.lua | 2 ++ .../gh-5994-memprof-human-readable.test.lua | 2 ++ ...7264-add-proto-trace-sysprof-default.test.lua | 2 ++ ...-9217-profile-parsers-error-handling.test.lua | 2 ++ .../profilers/misclib-memprof-lapi.test.lua | 16 +++++++++------- .../profilers/misclib-sysprof-lapi.test.lua | 2 ++ 8 files changed, 27 insertions(+), 7 deletions(-) diff --git a/test/tarantool-tests/CMakeLists.txt b/test/tarantool-tests/CMakeLists.txt index d0964aed..a1aee3a2 100644 --- a/test/tarantool-tests/CMakeLists.txt +++ b/test/tarantool-tests/CMakeLists.txt @@ -97,6 +97,12 @@ if(LUAJIT_USE_ASAN AND CMAKE_C_COMPILER_ID STREQUAL "GNU") list(APPEND LUA_TEST_ENV_MORE LD_PRELOAD=${LIB_ASAN}) endif() +# FIXME: This is needed for disabling some flaky tests (like +# profilers), until LuaJIT/LuaJIT#606 will not be resolved. +if(LUAJIT_ENABLE_TABLE_BUMP) + list(APPEND LUA_TEST_ENV_MORE LUAJIT_TABLE_BUMP=1) +endif() + set(TEST_SUITE_NAME "tarantool-tests") # XXX: The call produces both test and target diff --git a/test/tarantool-tests/profilers/gh-5688-tool-cli-flag.test.lua b/test/tarantool-tests/profilers/gh-5688-tool-cli-flag.test.lua index dd0fd260..f935dc5b 100644 --- a/test/tarantool-tests/profilers/gh-5688-tool-cli-flag.test.lua +++ b/test/tarantool-tests/profilers/gh-5688-tool-cli-flag.test.lua @@ -5,6 +5,8 @@ local test = tap.test('gh-5688-tool-cli-flag'):skipcond({ ['Profile tools are implemented for Linux only'] = jit.os ~= 'Linux', -- XXX: Tarantool integration is required to run this test properly. ['No profile tools CLI option integration'] = _TARANTOOL, + -- See also https://github.com/LuaJIT/LuaJIT/issues/606. + ['Disabled due to LuaJIT/LuaJIT#606'] = os.getenv('LUAJIT_TABLE_BUMP'), }) test:plan(3) diff --git a/test/tarantool-tests/profilers/gh-5813-resolving-of-c-symbols.test.lua b/test/tarantool-tests/profilers/gh-5813-resolving-of-c-symbols.test.lua index 1581ee4b..74bcd9e8 100644 --- a/test/tarantool-tests/profilers/gh-5813-resolving-of-c-symbols.test.lua +++ b/test/tarantool-tests/profilers/gh-5813-resolving-of-c-symbols.test.lua @@ -3,6 +3,8 @@ local test = tap.test("gh-5813-resolving-of-c-symbols"):skipcond({ ["Memprof is implemented for x86_64 only"] = jit.arch ~= "x86" and jit.arch ~= "x64", ["Memprof is implemented for Linux only"] = jit.os ~= "Linux", + -- See also https://github.com/LuaJIT/LuaJIT/issues/606. + ["Disabled due to LuaJIT/LuaJIT#606"] = os.getenv("LUAJIT_TABLE_BUMP"), }) test:plan(5) diff --git a/test/tarantool-tests/profilers/gh-5994-memprof-human-readable.test.lua b/test/tarantool-tests/profilers/gh-5994-memprof-human-readable.test.lua index 7c3ff94d..f3041779 100644 --- a/test/tarantool-tests/profilers/gh-5994-memprof-human-readable.test.lua +++ b/test/tarantool-tests/profilers/gh-5994-memprof-human-readable.test.lua @@ -5,6 +5,8 @@ local test = tap.test('gh-5994-memprof-human-readable'):skipcond({ ['Profile tools are implemented for Linux only'] = jit.os ~= 'Linux', -- XXX: Tarantool integration is required to run this test properly. ['No profile tools CLI option integration'] = _TARANTOOL, + -- See also https://github.com/LuaJIT/LuaJIT/issues/606. + ['Disabled due to LuaJIT/LuaJIT#606'] = os.getenv('LUAJIT_TABLE_BUMP'), }) local utils = require('utils') diff --git a/test/tarantool-tests/profilers/gh-7264-add-proto-trace-sysprof-default.test.lua b/test/tarantool-tests/profilers/gh-7264-add-proto-trace-sysprof-default.test.lua index c1d68e3c..176c1a15 100644 --- a/test/tarantool-tests/profilers/gh-7264-add-proto-trace-sysprof-default.test.lua +++ b/test/tarantool-tests/profilers/gh-7264-add-proto-trace-sysprof-default.test.lua @@ -4,6 +4,8 @@ local test = tap.test('gh-7264-add-proto-trace-sysprof-default'):skipcond({ ['Sysprof is implemented for x86_64 only'] = jit.arch ~= 'x86' and jit.arch ~= 'x64', ['Sysprof is implemented for Linux only'] = jit.os ~= 'Linux', + -- See also https://github.com/LuaJIT/LuaJIT/issues/606. + ['Disabled due to LuaJIT/LuaJIT#606'] = os.getenv('LUAJIT_TABLE_BUMP'), }) test:plan(2) diff --git a/test/tarantool-tests/profilers/gh-9217-profile-parsers-error-handling.test.lua b/test/tarantool-tests/profilers/gh-9217-profile-parsers-error-handling.test.lua index 92f9f59d..65c51198 100644 --- a/test/tarantool-tests/profilers/gh-9217-profile-parsers-error-handling.test.lua +++ b/test/tarantool-tests/profilers/gh-9217-profile-parsers-error-handling.test.lua @@ -5,6 +5,8 @@ local test = tap.test('gh-9217-profile-parsers-error-handling'):skipcond({ ['Profile tools are implemented for Linux only'] = jit.os ~= 'Linux', -- XXX: Tarantool integration is required to run this test properly. ['No profile tools CLI option integration'] = _TARANTOOL, + -- See also https://github.com/LuaJIT/LuaJIT/issues/606. + ['Disabled due to LuaJIT/LuaJIT#606'] = os.getenv('LUAJIT_TABLE_BUMP'), }) jit.off() diff --git a/test/tarantool-tests/profilers/misclib-memprof-lapi.test.lua b/test/tarantool-tests/profilers/misclib-memprof-lapi.test.lua index 728a7ab7..ce41e4d5 100644 --- a/test/tarantool-tests/profilers/misclib-memprof-lapi.test.lua +++ b/test/tarantool-tests/profilers/misclib-memprof-lapi.test.lua @@ -6,6 +6,8 @@ local test = tap.test("misc-memprof-lapi"):skipcond({ ['Disabled on *BSD due to #4819'] = jit.os == 'BSD', ["Memprof is implemented for x86_64 only"] = jit.arch ~= "x86" and jit.arch ~= "x64", + -- See also https://github.com/LuaJIT/LuaJIT/issues/606. + ["Disabled due to LuaJIT/LuaJIT#606"] = os.getenv("LUAJIT_TABLE_BUMP"), }) test:plan(5) @@ -162,9 +164,9 @@ test:test("output", function(subtest) -- one is the number of allocations. 1 event - allocation of -- table by itself + 1 allocation of array part as far it is -- bigger than LJ_MAX_COLOSIZE (16). - subtest:ok(check_alloc_report(alloc, { line = 37, linedefined = 35 }, 2)) + subtest:ok(check_alloc_report(alloc, { line = 39, linedefined = 37 }, 2)) -- 20 strings allocations. - subtest:ok(check_alloc_report(alloc, { line = 42, linedefined = 35 }, 20)) + subtest:ok(check_alloc_report(alloc, { line = 44, linedefined = 37 }, 20)) -- Collect all previous allocated objects. subtest:ok(free.INTERNAL == 22) @@ -172,8 +174,8 @@ test:test("output", function(subtest) -- Tests for leak-only option. -- See also https://github.com/tarantool/tarantool/issues/5812. local heap_delta = process.form_heap_delta(events) - local tab_alloc_stats = heap_delta[form_source_line(37)] - local str_alloc_stats = heap_delta[form_source_line(42)] + local tab_alloc_stats = heap_delta[form_source_line(39)] + local str_alloc_stats = heap_delta[form_source_line(44)] subtest:ok(tab_alloc_stats.nalloc == tab_alloc_stats.nfree) subtest:ok(tab_alloc_stats.dbytes == 0) subtest:ok(str_alloc_stats.nalloc == str_alloc_stats.nfree) @@ -258,10 +260,10 @@ test:test("jit-output", function(subtest) -- 10 allocations in interpreter mode, 1 allocation for a trace -- recording and assembling and next 9 allocations will happen -- while running the trace. - subtest:ok(check_alloc_report(alloc, { line = 42, linedefined = 35 }, 11)) - subtest:ok(check_alloc_report(alloc, { traceno = 1, line = 40 }, 9)) + subtest:ok(check_alloc_report(alloc, { line = 44, linedefined = 37 }, 11)) + subtest:ok(check_alloc_report(alloc, { traceno = 1, line = 42 }, 9)) -- See same checks with jit.off(). - subtest:ok(check_alloc_report(alloc, { line = 37, linedefined = 35 }, 2)) + subtest:ok(check_alloc_report(alloc, { line = 39, linedefined = 37 }, 2)) -- Restore default JIT settings. jit.opt.start(unpack(jit_opt_default)) diff --git a/test/tarantool-tests/profilers/misclib-sysprof-lapi.test.lua b/test/tarantool-tests/profilers/misclib-sysprof-lapi.test.lua index fdaed46a..26c277cd 100644 --- a/test/tarantool-tests/profilers/misclib-sysprof-lapi.test.lua +++ b/test/tarantool-tests/profilers/misclib-sysprof-lapi.test.lua @@ -3,6 +3,8 @@ local test = tap.test("misc-sysprof-lapi"):skipcond({ ["Sysprof is implemented for x86_64 only"] = jit.arch ~= "x86" and jit.arch ~= "x64", ["Sysprof is implemented for Linux only"] = jit.os ~= "Linux", + -- See also https://github.com/LuaJIT/LuaJIT/issues/606. + ["Disabled due to LuaJIT/LuaJIT#606"] = os.getenv("LUAJIT_TABLE_BUMP"), }) test:plan(19) -- 2.46.0