On 4/9/25 01:29, Andres Freund wrote: > Hi, > > On 2025-04-09 01:10:09 +0200, Tomas Vondra wrote: >> On 4/8/25 15:06, Andres Freund wrote: >>> Hi, >>> >>> On 2025-04-08 17:44:19 +0500, Kirill Reshke wrote: >>>> On Mon, 7 Apr 2025 at 23:00, Tomas Vondra <to...@vondra.me> wrote: >>>>> I'll let the CI run the tests on it, and >>>>> then will push, unless someone has more comments. >>>>> >>>> >>>> >>>> Hi! I noticed strange failure after this commit[0] >>>> >>>> Looks like it is related to 65c298f61fc70f2f960437c05649f71b862e2c48 >>>> >>>> In file included from [01m [K../pgsql/src/include/postgres.h:49 [m [K, >>>> from [01m [K../pgsql/src/port/pg_numa.c:16 [m [K: >>>> [01m [K../pgsql/src/include/utils/elog.h:79:10: [m [K >>>> [01;31m [Kfatal error: [m [Kutils/errcodes.h: No such file or >>>> directory >>>> 79 | #include [01;31m [K"utils/errcodes.h" [m [K >>>> | [01;31m [K^~~~~~~~~~~~~~~~~~ [m [K >>>> compilation terminated. >>> >>> $ ninja -t missingdeps >>> Missing dep: src/port/libpgport.a.p/pg_numa.c.o uses >>> src/include/utils/errcodes.h (generated by CUSTOM_COMMAND) >>> Missing dep: src/port/libpgport_shlib.a.p/pg_numa.c.o uses >>> src/include/utils/errcodes.h (generated by CUSTOM_COMMAND) >>> Processed 2384 nodes. >>> Error: There are 2 missing dependency paths. >>> 2 targets had depfile dependencies on 1 distinct generated inputs (from 1 >>> rules) without a non-depfile dep path to the generator. >>> There might be build flakiness if any of the targets listed above are built >>> alone, or not late enough, in a clean output directory. >>> >> >> Wouldn't it be good to add this (ninja -t missingdeps) to the CI task? I >> ran those tests many times, and had it failed at least once I'd have >> fixed it before commit. > > Yes, we should. It's a somewhat newer feature, so we originally couldn't. > There only was a very clunky and slow python script when I was doing most of > the meson work. > > I was actually thinking that it might make sense as a meson-registered test, > that way one quickly can find the issue both locally and on CI. >
OK, here are two patches, where 0001 adds the missingdeps check to the Debian meson build. It just adds that to the build script. 0002 leaves the NUMA stuff in src/port (i.e. it's no longer moved to src/backend/port). It still needs to include c.h because of PGDLLIMPORT, but I think that's fine. regards -- Tomas Vondra