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 703F3C9DF91; Mon, 23 Sep 2024 10:22:17 +0300 (MSK) DKIM-Filter: OpenDKIM Filter v2.11.0 dev.tarantool.org 703F3C9DF91 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=tarantool.org; s=dev; t=1727076137; bh=DmaA0FQxROpcBttEwizew8A4SznzXuhqFDzCbmE8GmE=; 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=lH2ivsH6e9gYCGhQyQZ9OUoJsTN/xz9LfBZNYsxU4Zuqj4JiNRgUtJ/R7h8SOdjYw 3yu6WgoKbcCyloaJ3Mm7NXJnmwjte7qdVfkiyl9mkFpa2LY5F1b35aEMgFr492lr/C RMW2QyDksqpqWD/vOLir7rF4mPAsyj3hlA2fgrWM= Received: from smtp31.i.mail.ru (smtp31.i.mail.ru [95.163.41.72]) (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 F16C9CC8EAF for ; Mon, 23 Sep 2024 10:19:21 +0300 (MSK) DKIM-Filter: OpenDKIM Filter v2.11.0 dev.tarantool.org F16C9CC8EAF Received: by smtp31.i.mail.ru with esmtpa (envelope-from ) id 1ssdLs-0000000C9Sx-08SP; Mon, 23 Sep 2024 10:19:21 +0300 To: Maxim Kokryashkin , Sergey Bronnikov Date: Mon, 23 Sep 2024 10:18:52 +0300 Message-ID: <23004eef77d20e7cbb8698d3961082559e213183.1727074292.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: 646B95376F6C166E X-77F55803: 4F1203BC0FB41BD96E52E9D942F25A5FD02FE8D1A50C7D64B7B5A696322AA99E00894C459B0CD1B942E54714FD4C8030C23CA552186D3265C9CE5D940C9CD38E693F64E413CBBBEEE5719F5EA8C3A75A X-7FA49CB5: FF5795518A3D127A4AD6D5ED66289B5278DA827A17800CE766DBE83FD69AB645EA1F7E6F0F101C67BD4B6F7A4D31EC0BCC500DACC3FED6E28638F802B75D45FF8AA50765F790063779018AFA06A12C538638F802B75D45FF36EB9D2243A4F8B5A6FCA7DBDB1FC311F39EFFDF887939037866D6147AF826D8B0DFBD12D9A4E3B8A57B93FDDFD97B75A3FD23625BEE7A63CC7F00164DA146DAFE8445B8C89999728AA50765F7900637424B6AA9142E4BBC389733CBF5DBD5E9C8A9BA7A39EFB766F5D81C698A659EA7CC7F00164DA146DA9985D098DBDEAEC886A7C529F68B8E5CF6B57BC7E6449061A352F6E88A58FB86F5D81C698A659EA73AA81AA40904B5D9A18204E546F3947C2D01283D1ACF37BA302FCEF25BFAB3454AD6D5ED66289B523666184CF4C3C14F6136E347CC761E07725E5C173C3A84C31DD302B0B79430F8BA3038C0950A5D36B5C8C57E37DE458B330BD67F2E7D9AF16D1867E19FE14079C09775C1D3CA48CF17B107DEF921CE791DD303D21008E298D5E8D9A59859A8B6D082881546D9349175ECD9A6C639B01B78DA827A17800CE7888FFA144A8AE6D0731C566533BA786AA5CC5B56E945C8DA X-C1DE0DAB: 0D63561A33F958A54FD2B0388AA3124F5002B1117B3ED6968EFDB09862D1069922DFD5397F446790823CB91A9FED034534781492E4B8EEADB30A456A8F293845C79554A2A72441328621D336A7BC284946AD531847A6065A535571D14F44ED41 X-C8649E89: 1C3962B70DF3F0ADE00A9FD3E00BEEDF3FED46C3ACD6F73ED3581295AF09D3DF87807E0823442EA2ED31085941D9CD0AF7F820E7B07EA4CF5076BE25AE4DF0E7591A880515EDF2C2C9AA393B8ECECCE547598C019BDDF10B669E50AE97022433FD4E6A0B424C2B488E47DD3B10BBECACD114F5CB28E8335851650101CAA61480C226CC413062362A913E6812662D5F2A5EAB5682573093F7837F15F2B5E4A70B33F2C28C22F508233FCF178C6DD14203 X-D57D3AED: 3ZO7eAau8CL7WIMRKs4sN3D3tLDjz0dLbV79QFUyzQ2Ujvy7cMT6pYYqY16iZVKkSc3dCLJ7zSJH7+u4VD18S7Vl4ZUrpaVfd2+vE6kuoey4m4VkSEu530nj6fImhcD4MUrOEAnl0W826KZ9Q+tr5ycPtXkTV4k65bRjmOUUP8cvGozZ33TWg5HZplvhhXbhDGzqmQDTd6OAevLeAnq3Ra9uf7zvY2zzsIhlcp/Y7m53TZgf2aB4JOg4gkr2biojcsBYxvRMKewib2fKglD3PQ== X-Mailru-Sender: 520A125C2F17F0B1A9638AD358559B5993CDD78023ABF1BA0578E6996F38341348121B3F8841670AB7CBEF92542CD7C88B0A2698F12F5C9EC77752E0C033A69E86920BD37369036789A8C6A0E60D2BB63A5DB60FBEB33A8A0DA7A0AF5A3A8387 X-Mras: Ok Subject: [Tarantool-patches] [PATCH 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 6f1b1ae1..fe1d8165 100644 --- a/test/tarantool-tests/CMakeLists.txt +++ b/test/tarantool-tests/CMakeLists.txt @@ -92,6 +92,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