Re: Convert sepgsql tests to TAP
От | Andrew Dunstan |
---|---|
Тема | Re: Convert sepgsql tests to TAP |
Дата | |
Msg-id | be22789c-5919-40c0-8002-60aaaf5791ee@dunslane.net обсуждение исходный текст |
Ответ на | Re: Convert sepgsql tests to TAP (Tom Lane <tgl@sss.pgh.pa.us>) |
Список | pgsql-hackers |
On 2025-01-24 Fr 6:08 PM, Tom Lane wrote: > I wrote: >> Oh ... wait a second. After further code reading I see that >> the BF client sets NO_TEMP_INSTALL if check_install_is_complete >> succeeds. So evidently, that is successfully suppressing >> "make install" on most animals, but not these two. How come? > Got it: we can see on alligator that it installs (for instance) > test_parser.so into > > /usr/bin/install -c -m 755 test_parser.so '/home/postgres/proj/build-farm-17/buildroot/HEAD/inst/lib/test_parser.so' > > but what check_install_is_complete is looking for is > > $tmp_loc = "$tmp_loc/$install_dir"; > $bindir = "$tmp_loc/bin"; > $libdir = "$tmp_loc/lib/postgresql"; > ... > my $res = > ( (-d $tmp_loc) > && (-f "$bindir/postgres" || -f "$bindir/postgres.exe") > && (-f "$libdir/hstore$suffix") > && (-f "$libdir/test_parser$suffix")); > > That is, check_install_is_complete expects to see test_parser.so > under installdir/lib/postgresql/, but it's actually getting put > into installdir/lib/ because "postgres" appears earlier in the > path. So we're forcing a bunch of useless "make install"s, > but that was never mission-critical until today. > > Unsurprisingly, lapwing is also running under /home/postgres/. > Apparently no other BF animals are. Oh, good catch! I'll go and fix it. cheers andrew -- Andrew Dunstan EDB: https://www.enterprisedb.com
В списке pgsql-hackers по дате отправления: