Re: scalability bottlenecks with (many) partitions (and more) - Mailing list pgsql-hackers

From Tom Lane
Subject Re: scalability bottlenecks with (many) partitions (and more)
Date
Msg-id 200085.1741127335@sss.pgh.pa.us
Whole thread Raw
In response to Re: scalability bottlenecks with (many) partitions (and more)  (Andrew Dunstan <andrew@dunslane.net>)
Responses Re: scalability bottlenecks with (many) partitions (and more)
Re: scalability bottlenecks with (many) partitions (and more)
Re: scalability bottlenecks with (many) partitions (and more)
List pgsql-hackers
Andrew Dunstan <andrew@dunslane.net> writes:
> I think I found a logic bug. Testing.

Not sure what you are looking at, but I was trying to fix it
by making the loop over test modules skip unbuilt modules,
borrowing the test you added in v19 to skip unbuilt contrib
modules.  It's a little more complicated for the other modules
because some of them have no .c files to be built, and I could
not get that to work.  I eventually concluded that there's
something wrong with the "scalar glob()" idiom you used.
A bit of googling suggested "grep -e, glob()" instead, and
that seems to work for me.  sifaka seems happy with the
attached patch.

            regards, tom lane

--- run_build.pl~    2025-03-04 16:34:04.082252563 -0500
+++ run_build.pl    2025-03-04 16:35:25.967357487 -0500
@@ -2483,6 +2483,11 @@ sub run_misc_tests
         my $testname = basename($testdir);
         next if $testname =~ /ssl/ && !$using_ssl;
         next unless -d "$testdir/t";
+
+        # can't test it if we haven't built it
+        next unless grep -e, glob("$testdir/*.o $testdir/*.obj")
+            or not grep -e, glob("$testdir/*.c");
+
         next if $using_msvc && $testname eq 'pg_bsd_indent';
         next unless step_wanted("module-$testname");
         print time_str(), "running misc test module-$testname ...\n"
@@ -2496,7 +2501,7 @@ sub run_misc_tests
         my $testname = basename($testdir);
 
         # can't test it if we haven't built it
-        next unless scalar glob("$testdir/*.o $testdir/*.obj");
+        next unless grep -e, glob("$testdir/*.o $testdir/*.obj");
 
         # skip sepgsql unless it's marked for testing
         next if $testname eq 'sepgsql' && $ENV{PG_TEST_EXTRA} !~ /\bsepgsql\b/;

pgsql-hackers by date:

Previous
From: Jacob Champion
Date:
Subject: Re: [PATCH] Add regression tests of ecpg command notice (error / warning)
Next
From: Jacob Brazeal
Date:
Subject: Re: Next commitfest app release is planned for March 18th