]> Sergey Matveev's repositories - public-inbox.git/commitdiff
tests: "make check-run" favors reliability over speed
authorEric Wong <e@80x24.org>
Thu, 2 Sep 2021 22:36:47 +0000 (22:36 +0000)
committerEric Wong <e@80x24.org>
Thu, 2 Sep 2021 22:48:52 +0000 (22:48 +0000)
Sharing a single lei-daemon across multiple processes still
exhibits reliability problems, and reliably checking
lei-daemon's inotify internals seems impossible without.

Even without lei-daemon sharing, "make check-run" is a few
seconds faster than "make check" for me.

t/run.perl

index f6eb0ad31410a905f90dafd70dc2e33ec5544298..5082125bab6e609711089d2aff3649a513fed474 100755 (executable)
@@ -53,10 +53,11 @@ key2sub($_) for @tests; # precache
 
 my ($for_destroy, $lei_env, $lei_daemon_pid, $owner_pid);
 
-# I get ECONNRESET from lei on FreeBSD 11.3 even with
-# kern.ipc.soacceptqueue=1073741823, so persistent lei-daemon in tests
-# is Linux-only for now:
-if ($^O eq 'linux' && !$ENV{TEST_LEI_DAEMON_PERSIST_DIR} &&
+# TEST_LEI_DAEMON_PERSIST is currently broken.  I get ECONNRESET from
+# lei even with high kern.ipc.soacceptqueue=1073741823 or SOMAXCONN, not
+# sure why.  Also, testing our internal inotify usage is unreliable
+# because lei-daemon uses a single inotify FD for all clients.
+if ($ENV{TEST_LEI_DAEMON_PERSIST} && !$ENV{TEST_LEI_DAEMON_PERSIST_DIR} &&
                (PublicInbox::Spawn->can('recv_cmd4') ||
                        eval { require Socket::MsgHdr })) {
        $lei_env = {};