From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on dcvr.yhbt.net X-Spam-Level: X-Spam-ASN: X-Spam-Status: No, score=-4.0 required=3.0 tests=ALL_TRUSTED,AWL,BAYES_00, T_SCC_BODY_TEXT_LINE shortcircuit=no autolearn=ham autolearn_force=no version=3.4.2 Received: from localhost (dcvr.yhbt.net [127.0.0.1]) by dcvr.yhbt.net (Postfix) with ESMTP id 8DF8F1F852; Sun, 13 Feb 2022 21:01:59 +0000 (UTC) Date: Sun, 13 Feb 2022 21:01:59 +0000 From: Eric Wong To: Konstantin Ryabitsev Cc: meta@public-inbox.org Subject: Re: test: 'seen set from rename' potentially racy Message-ID: <20220213210159.GA9364@dcvr> References: <20211104134327.zrf5jijfz7dsvb7l@meerkat.local> <20211104185149.GA9220@dcvr> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline In-Reply-To: <20211104185149.GA9220@dcvr> List-Id: Eric Wong wrote: > Konstantin Ryabitsev wrote: > > Hello: > > > > I was having some trouble using "make check" on the Fedora build system: > > > > # Failed test 'seen set from rename' > > # at t/lei-watch.t line 61. > > # '/tmp/pi-lei-watch-11080-FYz2/lei-daemon/md2/cur/9bf1002c49eb075df47247b74d69bcd555e23422=99:2,' > > # doesn't match '(?^:S\z)' > > # [ > > # '/tmp/pi-lei-watch-11080-FYz2/lei-daemon/md2/cur/9bf1002c49eb075df47247b74d69bcd555e23422=99:2,' > > # ] > > > > This wasn't happening in my own chroot builds, so I'm suspecting that the > > faster system on the Fedora build infra side is causing this failure, > > therefore perhaps some kind of race condition. > > Hmm, I thought I fixed it... Does increasing the tick sleep time help? Nope, 5fb5b6d1a62b74b3 (t/lei-watch: test with with higher sleep, 2021-11-10) didn't help... > > > https://download.copr.fedorainfracloud.org/results/icon/b4/fedora-35-x86_64/02928611-public-inbox/build.log.gz > > "prove --state=save -bvw -j3", so 2 cores? Any idea what > CONFIG_HZ is on that system? > > > Switching to "make test" seems to help, which is what I've done for now. > > OK, so it could be load related. There could probably be a way > to "subscribe" for updates to lei-daemon so sleeping wouldn't be > necessary. I'll see abouit it next week, got some other stuff > to take care of... That's on the table in case I get my mind back or somebody else helps. I haven't been able to work on anything requiring original thought in months (not that it's ever been great), so I think disabling flaky tests for now is the least bad option: ---------------8<----------- Subject: [PATCH] t/lei-*watch: disable flaky tests by default for now Properly fixing these tests is too difficult for me at the moment, so just disable these tests for now. A proper fix and fleshing out support for inotify will hopefully happen at some point. --- t/lei-auto-watch.t | 1 + t/lei-watch.t | 1 + 2 files changed, 2 insertions(+) diff --git a/t/lei-auto-watch.t b/t/lei-auto-watch.t index d5661ae5..f871188d 100644 --- a/t/lei-auto-watch.t +++ b/t/lei-auto-watch.t @@ -3,6 +3,7 @@ # License: AGPL-3.0+ use strict; use v5.10.1; use PublicInbox::TestCommon; use File::Basename qw(basename); +plan skip_all => "TEST_FLAKY not enabled for $0" if !$ENV{TEST_FLAKY}; my $have_fast_inotify = eval { require Linux::Inotify2 } || eval { require IO::KQueue }; $have_fast_inotify or diff --git a/t/lei-watch.t b/t/lei-watch.t index e6066033..24d9f5c8 100644 --- a/t/lei-watch.t +++ b/t/lei-watch.t @@ -3,6 +3,7 @@ # License: AGPL-3.0+ use strict; use v5.10.1; use PublicInbox::TestCommon; use File::Path qw(make_path remove_tree); +plan skip_all => "TEST_FLAKY not enabled for $0" if !$ENV{TEST_FLAKY}; require_mods('lei'); my $have_fast_inotify = eval { require Linux::Inotify2 } || eval { require IO::KQueue };