Buildfarm support for older versions
OK, old_branches_of_interest.txt now exists on the buildfarm server, and the code has been modified to take notice of it (i.e. to accept builds for branches listed there). The contents are the non-live versions from 9.2 on. I have set up a test buildfarm client (which will eventually report under the name 'godwit') alongside crake (Fedora 34). So far testing has run smoothly, there are only two glitches: * 9.3 and 9.2 don't have a show_dl_suffix make target. This would require backpatching b40cb99b85 and d9cdb1ba9e. That's a tiny change, and I propose to do it shortly unless there's an objection. * I need to undo the removal of client logic that supported 9.2's unix_socket_directory setting as opposed to the later unix_socket_directories. cheers andrew -- Andrew Dunstan EDB: https://www.enterprisedb.com
Re: Buildfarm support for older versions
Andrew Dunstan writes: > I have set up a test buildfarm client (which will eventually report > under the name 'godwit') alongside crake (Fedora 34). So far testing has > run smoothly, there are only two glitches: > * 9.3 and 9.2 don't have a show_dl_suffix make target. This would > require backpatching b40cb99b85 and d9cdb1ba9e. That's a tiny > change, and I propose to do it shortly unless there's an objection. Not really user-visible, so I can't see a problem with it. regards, tom lane
Re: Buildfarm support for older versions
On 12/15/2021 11:15 am, Andrew Dunstan wrote: OK, old_branches_of_interest.txt now exists on the buildfarm server, and the code has been modified to take notice of it (i.e. to accept builds for branches listed there). The contents are the non-live versions from 9.2 on. I have set up a test buildfarm client (which will eventually report under the name 'godwit') alongside crake (Fedora 34). So far testing has run smoothly, there are only two glitches: * 9.3 and 9.2 don't have a show_dl_suffix make target. This would require backpatching b40cb99b85 and d9cdb1ba9e. That's a tiny change, and I propose to do it shortly unless there's an objection. * I need to undo the removal of client logic that supported 9.2's unix_socket_directory setting as opposed to the later unix_socket_directories. cheers andrew -- Andrew Dunstan EDB: https://www.enterprisedb.com Would a FreeBSD head (peripatus or a new animal) help? -- Larry Rosenman http://www.lerctr.org/~ler Phone: +1 214-642-9640 E-Mail: l...@lerctr.org US Mail: 5708 Sabbia Dr, Round Rock, TX 78665-2106
Re: Buildfarm support for older versions
On 12/15/21 21:36, Larry Rosenman wrote: > On 12/15/2021 11:15 am, Andrew Dunstan wrote: >> OK, old_branches_of_interest.txt now exists on the buildfarm server, and >> the code has been modified to take notice of it (i.e. to accept builds >> for branches listed there). The contents are the non-live versions from >> 9.2 on. >> >> I have set up a test buildfarm client (which will eventually report >> under the name 'godwit') alongside crake (Fedora 34). So far testing has >> run smoothly, there are only two glitches: >> >> * 9.3 and 9.2 don't have a show_dl_suffix make target. This would >> require backpatching b40cb99b85 and d9cdb1ba9e. That's a tiny >> change, and I propose to do it shortly unless there's an objection. >> * I need to undo the removal of client logic that supported 9.2's >> unix_socket_directory setting as opposed to the later >> unix_socket_directories. >> >> > > Would a FreeBSD head (peripatus or a new animal) help? A new animal, because we're not supporting every build option. On the non-live branches you really only want: --enable-debug --enable-cassert --enable-nls --enable-tap-tests --with-perl You can make it share the same storage as your existing animal (godwit and crake do this). The client is smart enough to manage locks of several animals appropriately. cheers andrew -- Andrew Dunstan EDB: https://www.enterprisedb.com
Re: Buildfarm support for older versions
On 12/16/2021 10:02 am, Andrew Dunstan wrote: On 12/15/21 21:36, Larry Rosenman wrote: On 12/15/2021 11:15 am, Andrew Dunstan wrote: OK, old_branches_of_interest.txt now exists on the buildfarm server, and the code has been modified to take notice of it (i.e. to accept builds for branches listed there). The contents are the non-live versions from 9.2 on. I have set up a test buildfarm client (which will eventually report under the name 'godwit') alongside crake (Fedora 34). So far testing has run smoothly, there are only two glitches: * 9.3 and 9.2 don't have a show_dl_suffix make target. This would require backpatching b40cb99b85 and d9cdb1ba9e. That's a tiny change, and I propose to do it shortly unless there's an objection. * I need to undo the removal of client logic that supported 9.2's unix_socket_directory setting as opposed to the later unix_socket_directories. Would a FreeBSD head (peripatus or a new animal) help? A new animal, because we're not supporting every build option. On the non-live branches you really only want: --enable-debug --enable-cassert --enable-nls --enable-tap-tests --with-perl You can make it share the same storage as your existing animal (godwit and crake do this). The client is smart enough to manage locks of several animals appropriately. cheers andrew -- So just create a new animal / config file, and set those options? and FreeBSD head / main would be useful? (Currently FreeBSD 14 and clang 13). -- Larry Rosenman http://www.lerctr.org/~ler Phone: +1 214-642-9640 E-Mail: l...@lerctr.org US Mail: 5708 Sabbia Dr, Round Rock, TX 78665-2106
Re: Buildfarm support for older versions
On 12/16/21 11:11, Larry Rosenman wrote: > >> >> A new animal, because we're not supporting every build option. On the >> non-live branches you really only want: >> >> --enable-debug --enable-cassert --enable-nls >> >> --enable-tap-tests --with-perl >> >> You can make it share the same storage as your existing animal (godwit >> and crake do this). The client is smart enough to manage locks of >> several animals appropriately. >> >> > > So just create a new animal / config file, and set those options? > and FreeBSD head / main would be useful? > (Currently FreeBSD 14 and clang 13). > Sure. I think if we get coverage for modern Linux, FreeBSD and Windows we should be in good shape. I doubt we need a heck of a lot of animals - there's not going to be much going on here. cheers andrew -- Andrew Dunstan EDB: https://www.enterprisedb.com
Re: Buildfarm support for older versions
On 12/16/2021 11:17 am, Andrew Dunstan wrote: On 12/16/21 11:11, Larry Rosenman wrote: A new animal, because we're not supporting every build option. On the non-live branches you really only want: --enable-debug --enable-cassert --enable-nls --enable-tap-tests --with-perl You can make it share the same storage as your existing animal (godwit and crake do this). The client is smart enough to manage locks of several animals appropriately. So just create a new animal / config file, and set those options? and FreeBSD head / main would be useful? (Currently FreeBSD 14 and clang 13). Sure. I think if we get coverage for modern Linux, FreeBSD and Windows we should be in good shape. I doubt we need a heck of a lot of animals - there's not going to be much going on here. cheers andrew Would you mind terribly giving me the exact steps? -- Larry Rosenman http://www.lerctr.org/~ler Phone: +1 214-642-9640 E-Mail: l...@lerctr.org US Mail: 5708 Sabbia Dr, Round Rock, TX 78665-2106
Re: Buildfarm support for older versions
On 12/16/21 12:26, Larry Rosenman wrote: > On 12/16/2021 11:17 am, Andrew Dunstan wrote: >> On 12/16/21 11:11, Larry Rosenman wrote: >>> A new animal, because we're not supporting every build option. On the non-live branches you really only want: --enable-debug --enable-cassert --enable-nls --enable-tap-tests --with-perl You can make it share the same storage as your existing animal (godwit and crake do this). The client is smart enough to manage locks of several animals appropriately. >>> >>> So just create a new animal / config file, and set those options? >>> and FreeBSD head / main would be useful? >>> (Currently FreeBSD 14 and clang 13). >>> >> >> Sure. I think if we get coverage for modern Linux, FreeBSD and Windows >> we should be in good shape. >> >> I doubt we need a heck of a lot of animals - there's not going to be >> much going on here. >> >> > > Would you mind terribly giving me the exact steps? * register a new animal with the same details * copy your existing config file to $new_animal.conf * edit the file and change the animal name and secret, the config_opts as above, and remove TestUpgrade form the modules setting * change branches_to_build to [qw( REL9_2_STABLE REL9_3_STABLE REL9_4_STABLE REL9_5_STABLE REL9_6_STABLE)] * you should probably unset CCACHEDIR in both config files * test with ./run_branches --test --config $newanimal.conf --run-all cheers andew -- Andrew Dunstan EDB: https://www.enterprisedb.com
Re: Buildfarm support for older versions
On 12/16/2021 2:47 pm, Andrew Dunstan wrote: On 12/16/21 12:26, Larry Rosenman wrote: On 12/16/2021 11:17 am, Andrew Dunstan wrote: On 12/16/21 11:11, Larry Rosenman wrote: A new animal, because we're not supporting every build option. On the non-live branches you really only want: --enable-debug --enable-cassert --enable-nls --enable-tap-tests --with-perl You can make it share the same storage as your existing animal (godwit and crake do this). The client is smart enough to manage locks of several animals appropriately. So just create a new animal / config file, and set those options? and FreeBSD head / main would be useful? (Currently FreeBSD 14 and clang 13). Sure. I think if we get coverage for modern Linux, FreeBSD and Windows we should be in good shape. I doubt we need a heck of a lot of animals - there's not going to be much going on here. Would you mind terribly giving me the exact steps? * register a new animal with the same details * copy your existing config file to $new_animal.conf * edit the file and change the animal name and secret, the config_opts as above, and remove TestUpgrade form the modules setting * change branches_to_build to [qw( REL9_2_STABLE REL9_3_STABLE REL9_4_STABLE REL9_5_STABLE REL9_6_STABLE)] * you should probably unset CCACHEDIR in both config files * test with ./run_branches --test --config $newanimal.conf --run-all I get: ERROR for site owner: Invalid domain for site key on https://pgbuildfarm.org/cgi-bin/register-form.pl -- Larry Rosenman http://www.lerctr.org/~ler Phone: +1 214-642-9640 E-Mail: l...@lerctr.org US Mail: 5708 Sabbia Dr, Round Rock, TX 78665-2106
Re: Buildfarm support for older versions
On 12/16/21 15:53, Larry Rosenman wrote: > > > I get: > ERROR for site owner: > Invalid domain for site key > > on https://pgbuildfarm.org/cgi-bin/register-form.pl try https://buildfarm.postgresql.org/cgi-bin/register-form.pl cheers andrew
Re: Buildfarm support for older versions
On 12/16/2021 3:23 pm, Andrew Dunstan wrote: On 12/16/21 15:53, Larry Rosenman wrote: I get: ERROR for site owner: Invalid domain for site key on https://pgbuildfarm.org/cgi-bin/register-form.pl try https://buildfarm.postgresql.org/cgi-bin/register-form.pl cheers andrew I filled out that form on the 16th, and haven't gotten a new animal assignment. Is there a problem with my data? -- Larry Rosenman http://www.lerctr.org/~ler Phone: +1 214-642-9640 E-Mail: l...@lerctr.org US Mail: 5708 Sabbia Dr, Round Rock, TX 78665-2106
Re: Buildfarm support for older versions
On 12/21/21 15:06, Larry Rosenman wrote: > I filled out that form on the 16th, and haven't gotten a new animal > assignment. Is there > a problem with my data? It's a manual process, done when your friendly admins have time. I have approved it now. cheers andrew -- Andrew Dunstan EDB: https://www.enterprisedb.com
Re: Buildfarm support for older versions
On 12/22/2021 7:20 am, Andrew Dunstan wrote: On 12/21/21 15:06, Larry Rosenman wrote: I filled out that form on the 16th, and haven't gotten a new animal assignment. Is there a problem with my data? It's a manual process, done when your friendly admins have time. I have approved it now. cheers andrew -- Andrew Dunstan EDB: https://www.enterprisedb.com REL9_2_STABLE make dies on: gmake[4]: Entering directory '/home/pgbuildfarm/buildroot/REL9_2_STABLE/pgsql.build/src/backend/utils' '/usr/bin/perl' ./generate-errcodes.pl ../../../src/backend/utils/errcodes.txt > errcodes.h cc -O2 -Wall -Wmissing-prototypes -Wpointer-arith -Wdeclaration-after-statement -Wendif-labels -Wmissing-format-attribute -Wformat-security -fno-strict-aliasing -fwrapv -Wno-unused-command-line-argument -Wno-compound-token-split-by-macro -Wno-sometimes-uninitialized -g -I../../src/port -DFRONTEND -I../../src/include -I/usr/local/include -c -o path.o path.c gmake[4]: Leaving directory '/home/pgbuildfarm/buildroot/REL9_2_STABLE/pgsql.build/src/backend/utils' prereqdir=`cd 'utils/' >/dev/null && pwd` && \ cd '../../src/include/utils/' && rm -f errcodes.h && \ ln -s "$prereqdir/errcodes.h" . gmake[3]: Leaving directory '/home/pgbuildfarm/buildroot/REL9_2_STABLE/pgsql.build/src/backend' cc -O2 -Wall -Wmissing-prototypes -Wpointer-arith -Wdeclaration-after-statement -Wendif-labels -Wmissing-format-attribute -Wformat-security -fno-strict-aliasing $ tail -30 make.log ld: error: relocation R_X86_64_PC32 cannot be used against symbol __mb_sb_limit; recompile with -fPIC defined in /lib/libc.so.7 referenced by pgstrcasecmp.c:109 pgstrcasecmp.o:(pg_toupper) in archive ../../src/port/libpgport.a ld: error: relocation R_X86_64_PC32 cannot be used against symbol _CurrentRuneLocale; recompile with -fPIC defined in /lib/libc.so.7 referenced by runetype.h:0 (/usr/include/runetype.h:0) pgstrcasecmp.o:(pg_toupper) in archive ../../src/port/libpgport.a ld: error: relocation R_X86_64_PC32 cannot be used against symbol __mb_sb_limit; recompile with -fPIC defined in /lib/libc.so.7 referenced by pgstrcasecmp.c:126 pgstrcasecmp.o:(pg_tolower) in archive ../../src/port/libpgport.a ld: error: relocation R_X86_64_PC32 cannot be used against symbol _CurrentRuneLocale; recompile with -fPIC defined in /lib/libc.so.7 referenced by runetype.h:0 (/usr/include/runetype.h:0) pgstrcasecmp.o:(pg_tolower) in archive ../../src/port/libpgport.a cc: error: linker command failed with exit code 1 (use -v to see invocation) gmake[3]: *** [../../src/Makefile.port:20: timetravel.so] Error 1 gmake[3]: *** Waiting for unfinished jobs rm moddatetime.o autoinc.o refint.o timetravel.o insert_username.o gmake[3]: Leaving directory '/home/pgbuildfarm/buildroot/REL9_2_STABLE/pgsql.build/contrib/spi' gmake[2]: *** [GNUmakefile:126: submake-contrib-spi] Error 2 gmake[2]: *** Waiting for unfinished jobs gmake[2]: Leaving directory '/home/pgbuildfarm/buildroot/REL9_2_STABLE/pgsql.build/src/test/regress' gmake[1]: *** [Makefile:33: all-test/regress-recurse] Error 2 gmake[1]: Leaving directory '/home/pgbuildfarm/buildroot/REL9_2_STABLE/pgsql.build/src' gmake: *** [GNUmakefile:11: all-src-recurse] Error 2 $ The other branches are still running. -- Larry Rosenman http://www.lerctr.org/~ler Phone: +1 214-642-9640 E-Mail: l...@lerctr.org US Mail: 5708 Sabbia Dr, Round Rock, TX 78665-2106
Re: Buildfarm support for older versions
On 12/22/2021 7:16 pm, Larry Rosenman wrote: On 12/22/2021 7:20 am, Andrew Dunstan wrote: On 12/21/21 15:06, Larry Rosenman wrote: I filled out that form on the 16th, and haven't gotten a new animal assignment. Is there a problem with my data? It's a manual process, done when your friendly admins have time. I have approved it now. cheers andrew -- Andrew Dunstan EDB: https://www.enterprisedb.com REL9_2_STABLE make dies on: gmake[4]: Entering directory '/home/pgbuildfarm/buildroot/REL9_2_STABLE/pgsql.build/src/backend/utils' '/usr/bin/perl' ./generate-errcodes.pl ../../../src/backend/utils/errcodes.txt > errcodes.h cc -O2 -Wall -Wmissing-prototypes -Wpointer-arith -Wdeclaration-after-statement -Wendif-labels -Wmissing-format-attribute -Wformat-security -fno-strict-aliasing -fwrapv -Wno-unused-command-line-argument -Wno-compound-token-split-by-macro -Wno-sometimes-uninitialized -g -I../../src/port -DFRONTEND -I../../src/include -I/usr/local/include -c -o path.o path.c gmake[4]: Leaving directory '/home/pgbuildfarm/buildroot/REL9_2_STABLE/pgsql.build/src/backend/utils' prereqdir=`cd 'utils/' >/dev/null && pwd` && \ cd '../../src/include/utils/' && rm -f errcodes.h && \ ln -s "$prereqdir/errcodes.h" . gmake[3]: Leaving directory '/home/pgbuildfarm/buildroot/REL9_2_STABLE/pgsql.build/src/backend' cc -O2 -Wall -Wmissing-prototypes -Wpointer-arith -Wdeclaration-after-statement -Wendif-labels -Wmissing-format-attribute -Wformat-security -fno-strict-aliasing $ tail -30 make.log ld: error: relocation R_X86_64_PC32 cannot be used against symbol __mb_sb_limit; recompile with -fPIC defined in /lib/libc.so.7 referenced by pgstrcasecmp.c:109 pgstrcasecmp.o:(pg_toupper) in archive ../../src/port/libpgport.a ld: error: relocation R_X86_64_PC32 cannot be used against symbol _CurrentRuneLocale; recompile with -fPIC defined in /lib/libc.so.7 referenced by runetype.h:0 (/usr/include/runetype.h:0) pgstrcasecmp.o:(pg_toupper) in archive ../../src/port/libpgport.a ld: error: relocation R_X86_64_PC32 cannot be used against symbol __mb_sb_limit; recompile with -fPIC defined in /lib/libc.so.7 referenced by pgstrcasecmp.c:126 pgstrcasecmp.o:(pg_tolower) in archive ../../src/port/libpgport.a ld: error: relocation R_X86_64_PC32 cannot be used against symbol _CurrentRuneLocale; recompile with -fPIC defined in /lib/libc.so.7 referenced by runetype.h:0 (/usr/include/runetype.h:0) pgstrcasecmp.o:(pg_tolower) in archive ../../src/port/libpgport.a cc: error: linker command failed with exit code 1 (use -v to see invocation) gmake[3]: *** [../../src/Makefile.port:20: timetravel.so] Error 1 gmake[3]: *** Waiting for unfinished jobs rm moddatetime.o autoinc.o refint.o timetravel.o insert_username.o gmake[3]: Leaving directory '/home/pgbuildfarm/buildroot/REL9_2_STABLE/pgsql.build/contrib/spi' gmake[2]: *** [GNUmakefile:126: submake-contrib-spi] Error 2 gmake[2]: *** Waiting for unfinished jobs gmake[2]: Leaving directory '/home/pgbuildfarm/buildroot/REL9_2_STABLE/pgsql.build/src/test/regress' gmake[1]: *** [Makefile:33: all-test/regress-recurse] Error 2 gmake[1]: Leaving directory '/home/pgbuildfarm/buildroot/REL9_2_STABLE/pgsql.build/src' gmake: *** [GNUmakefile:11: all-src-recurse] Error 2 $ The other branches are still running. Here's the full run: $ bin/latest/run_branches.pl --test --config $(pwd)/conf/gerenuk.conf --run-all Wed Dec 22 19:05:53 2021: buildfarm run for gerenuk:REL9_2_STABLE starting gerenuk:REL9_2_STABLE [19:05:54] checking out source ... gerenuk:REL9_2_STABLE [19:06:06] checking if build run needed ... gerenuk:REL9_2_STABLE [19:06:06] copying source to pgsql.build ... gerenuk:REL9_2_STABLE [19:06:08] running configure ... gerenuk:REL9_2_STABLE [19:06:36] running make ... Branch: REL9_2_STABLE Stage Make failed with status 2 Wed Dec 22 19:08:21 2021: buildfarm run for gerenuk:REL9_3_STABLE starting gerenuk:REL9_3_STABLE [19:08:21] checking out source ... gerenuk:REL9_3_STABLE [19:08:27] checking if build run needed ... gerenuk:REL9_3_STABLE [19:08:28] copying source to pgsql.build ... gerenuk:REL9_3_STABLE [19:08:29] running configure ... gerenuk:REL9_3_STABLE [19:08:52] running make ... gerenuk:REL9_3_STABLE [19:10:38] running make check ... gerenuk:REL9_3_STABLE [19:11:05] running make contrib ... gerenuk:REL9_3_STABLE [19:11:15] running make install ... gerenuk:REL9_3_STABLE [19:11:19] running make contrib install ... gerenuk:REL9_3_STABLE [19:11:21] checking pg_upgrade gerenuk:REL9_3_STABLE [19:12:29] running make check miscellaneous modules ... gerenuk:REL9_3_STABLE [19:12:29] setting up db cluster (C)... gerenuk:REL9_3_STABLE [19:12:32] starting db (C)... gerenuk:REL9_3_STABLE [19:12:33] running make installcheck (C)... gerenuk:REL9_3_STABLE [19:13:00] restarting db (C)... gerenuk:REL9_3_STABLE [19:13:03] running make isolation check ... gerenuk:REL9_3_STABLE [19:14:00] restarting db (C)... gerenuk:REL9_3_
Re: Buildfarm support for older versions
Larry Rosenman writes: > REL9_2_STABLE make dies on: > ld: error: relocation R_X86_64_PC32 cannot be used against symbol > _CurrentRuneLocale; recompile with -fPIC > [etc] What configure options did you use? regards, tom lane
Re: Buildfarm support for older versions
On 12/22/2021 9:34 pm, Tom Lane wrote: Larry Rosenman writes: REL9_2_STABLE make dies on: ld: error: relocation R_X86_64_PC32 cannot be used against symbol _CurrentRuneLocale; recompile with -fPIC [etc] What configure options did you use? regards, tom lane config_opts =>[ qw( --enable-cassert --enable-debug --enable-nls --enable-tap-tests --with-perl ) ], -- Larry Rosenman http://www.lerctr.org/~ler Phone: +1 214-642-9640 E-Mail: l...@lerctr.org US Mail: 5708 Sabbia Dr, Round Rock, TX 78665-2106
Re: Buildfarm support for older versions
Larry Rosenman writes: > On 12/22/2021 9:34 pm, Tom Lane wrote: >> What configure options did you use? > config_opts =>[ > qw( >--enable-cassert >--enable-debug >--enable-nls >--enable-tap-tests >--with-perl >) > ], Does it work if you drop --enable-nls? (It'd likely be worth fixing if so, but I'm trying to narrow the possible causes.) regards, tom lane
Re: Buildfarm support for older versions
On 12/22/2021 9:59 pm, Tom Lane wrote: Larry Rosenman writes: On 12/22/2021 9:34 pm, Tom Lane wrote: What configure options did you use? config_opts =>[ qw( --enable-cassert --enable-debug --enable-nls --enable-tap-tests --with-perl ) ], Does it work if you drop --enable-nls? (It'd likely be worth fixing if so, but I'm trying to narrow the possible causes.) regards, tom lane Nope... gmake[3]: Leaving directory '/home/pgbuildfarm/buildroot/REL9_2_STABLE/pgsql.build/contrib/dummy_seclabel' cp ../../../contrib/dummy_seclabel/dummy_seclabel.so dummy_seclabel.so cc -O2 -Wall -Wmissing-prototypes -Wpointer-arith -Wdeclaration-after-statement -Wendif-labels -Wmissing-format-attribute -Wformat-security -fno-strict-aliasing -fwrapv -Wno-unused-command-line-argument -Wno-compound-token-split-by-macro -Wno-sometimes-uninitialized -g -fPIC -DPIC -L../../src/port -L/usr/local/lib -Wl,--as-needed -Wl,-R'/home/pgbuildfarm/buildroot/REL9_2_STABLE/inst/lib' -L../../src/port -lpgport -shared -o moddatetime.so moddatetime.o cc -O2 -Wall -Wmissing-prototypes -Wpointer-arith -Wdeclaration-after-statement -Wendif-labels -Wmissing-format-attribute -Wformat-security -fno-strict-aliasing -fwrapv -Wno-unused-command-line-argument -Wno-compound-token-split-by-macro -Wno-sometimes-uninitialized -g -fPIC -DPIC -L../../src/port -L/usr/local/lib -Wl,--as-needed -Wl,-R'/home/pgbuildfarm/buildroot/REL9_2_STABLE/inst/lib' -L../../src/port -lpgport -shared -o insert_username.so insert_username.o cc -O2 -Wall -Wmissing-prototypes -Wpointer-arith -Wdeclaration-after-statement -Wendif-labels -Wmissing-format-attribute -Wformat-security -fno-strict-aliasing -fwrapv -Wno-unused-command-line-argument -Wno-compound-token-split-by-macro -Wno-sometimes-uninitialized -g -fPIC -DPIC -L../../src/port -L/usr/local/lib -Wl,--as-needed -Wl,-R'/home/pgbuildfarm/buildroot/REL9_2_STABLE/inst/lib' -L../../src/port -lpgport -shared -o autoinc.so autoinc.o cc -O2 -Wall -Wmissing-prototypes -Wpointer-arith -Wdeclaration-after-statement -Wendif-labels -Wmissing-format-attribute -Wformat-security -fno-strict-aliasing -fwrapv -Wno-unused-command-line-argument -Wno-compound-token-split-by-macro -Wno-sometimes-uninitialized -g -fPIC -DPIC -L../../src/port -L/usr/local/lib -Wl,--as-needed -Wl,-R'/home/pgbuildfarm/buildroot/REL9_2_STABLE/inst/lib' -L../../src/port -lpgport -shared -o timetravel.so timetravel.o cc -O2 -Wall -Wmissing-prototypes -Wpointer-arith -Wdeclaration-after-statement -Wendif-labels -Wmissing-format-attribute -Wformat-security -fno-strict-aliasing -fwrapv -Wno-unused-command-line-argument -Wno-compound-token-split-by-macro -Wno-sometimes-uninitialized -g -fPIC -DPIC -L../../src/port -L/usr/local/lib -Wl,--as-needed -Wl,-R'/home/pgbuildfarm/buildroot/REL9_2_STABLE/inst/lib' -L../../src/port -lpgport -shared -o refint.so refint.o ld: error: relocation R_X86_64_PC32 cannot be used against symbol _CurrentRuneLocale; recompile with -fPIC defined in /lib/libc.so.7 referenced by pgstrcasecmp.c:37 pgstrcasecmp.o:(pg_strcasecmp) in archive ../../src/port/libpgport.a ld: error: relocation R_X86_64_PC32 cannot be used against symbol __mb_sb_limit; recompile with -fPIC defined in /lib/libc.so.7 referenced by pgstrcasecmp.c:37 pgstrcasecmp.o:(pg_strcasecmp) in archive ../../src/port/libpgport.a ld: error: relocation R_X86_64_PC32 cannot be used against symbol _CurrentRuneLocale; recompile with -fPIC defined in /lib/libc.so.7 referenced by pgstrcasecmp.c:70 pgstrcasecmp.o:(pg_strncasecmp) in archive ../../src/port/libpgport.a ld: error: relocation R_X86_64_PC32 cannot be used against symbol __mb_sb_limit; recompile with -fPIC defined in /lib/libc.so.7 referenced by pgstrcasecmp.c:70 pgstrcasecmp.o:(pg_strncasecmp) in archive ../../src/port/libpgport.a ld: error: relocation R_X86_64_PC32 cannot be used against symbol __mb_sb_limit; recompile with -fPIC defined in /lib/libc.so.7 referenced by pgstrcasecmp.c:109 pgstrcasecmp.o:(pg_toupper) in archive ../../src/port/libpgport.a ld: error: relocation R_X86_64_PC32 cannot be used against symbol _CurrentRuneLocale; recompile with -fPIC defined in /lib/libc.so.7 referenced by runetype.h:0 (/usr/include/runetype.h:0) pgstrcasecmp.o:(pg_toupper) in archive ../../src/port/libpgport.a ld: error: relocation R_X86_64_PC32 cannot be used against symbol __mb_sb_limit; recompile with -fPIC defined in /lib/libc.so.7 referenced by pgstrcasecmp.c:126 pgstrcasecmp.o:(pg_tolower) in archive ../../src/port/libpgport.a ld: error: relocation R_X86_64_PC32 cannot be used against symbol _CurrentRuneLocale; recompile with -fPIC defined in /lib/libc.so.7 referenced by runetype.h:0 (/usr/include/runetype.h:0) pgstrcasecmp.o:(pg_tolower
Re: Buildfarm support for older versions
Larry Rosenman writes: > On 12/22/2021 9:59 pm, Tom Lane wrote: >> Does it work if you drop --enable-nls? (It'd likely be worth fixing >> if so, but I'm trying to narrow the possible causes.) > Nope... OK. Since 9.3 succeeds, it seems like it's a link problem we fixed at some point. Can you bisect to find where we fixed it? regards, tom lane
Re: Buildfarm support for older versions
On 12/22/2021 10:15 pm, Tom Lane wrote: Larry Rosenman writes: On 12/22/2021 9:59 pm, Tom Lane wrote: Does it work if you drop --enable-nls? (It'd likely be worth fixing if so, but I'm trying to narrow the possible causes.) Nope... OK. Since 9.3 succeeds, it seems like it's a link problem we fixed at some point. Can you bisect to find where we fixed it? regards, tom lane I can try -- I haven't been very good at that. I can give you access to the machine and the id the Buildfarm runs under. (or give me a good process starting from a buildfarm layout). -- Larry Rosenman http://www.lerctr.org/~ler Phone: +1 214-642-9640 E-Mail: l...@lerctr.org US Mail: 5708 Sabbia Dr, Round Rock, TX 78665-2106
Re: Buildfarm support for older versions
On 12/22/21 23:20, Larry Rosenman wrote: > On 12/22/2021 10:15 pm, Tom Lane wrote: >> Larry Rosenman writes: >>> On 12/22/2021 9:59 pm, Tom Lane wrote: Does it work if you drop --enable-nls? (It'd likely be worth fixing if so, but I'm trying to narrow the possible causes.) >> >>> Nope... >> >> OK. Since 9.3 succeeds, it seems like it's a link problem >> we fixed at some point. Can you bisect to find where we >> fixed it? >> >> regards, tom lane > > I can try -- I haven't been very good at that. > > I can give you access to the machine and the id the Buildfarm runs under. > > (or give me a good process starting from a buildfarm layout). > > I will work on it on my FBSD setup. cheers andrew -- Andrew Dunstan EDB: https://www.enterprisedb.com
Re: Buildfarm support for older versions
On 12/23/21 08:50, Andrew Dunstan wrote: > On 12/22/21 23:20, Larry Rosenman wrote: >> On 12/22/2021 10:15 pm, Tom Lane wrote: >>> Larry Rosenman writes: On 12/22/2021 9:59 pm, Tom Lane wrote: > Does it work if you drop --enable-nls? (It'd likely be worth fixing > if so, but I'm trying to narrow the possible causes.) Nope... >>> OK. Since 9.3 succeeds, it seems like it's a link problem >>> we fixed at some point. Can you bisect to find where we >>> fixed it? >>> >>> regards, tom lane >> I can try -- I haven't been very good at that. >> >> I can give you access to the machine and the id the Buildfarm runs under. >> >> (or give me a good process starting from a buildfarm layout). >> >> > I will work on it on my FBSD setup. > > For the 9.2 error, try setting this in the config_env stanza: CFLAGS => '-O2 -fPIC', cheers andrew -- Andrew Dunstan EDB: https://www.enterprisedb.com
Re: Buildfarm support for older versions
On 12/23/2021 10:13 am, Andrew Dunstan wrote: On 12/23/21 08:50, Andrew Dunstan wrote: On 12/22/21 23:20, Larry Rosenman wrote: On 12/22/2021 10:15 pm, Tom Lane wrote: Larry Rosenman writes: On 12/22/2021 9:59 pm, Tom Lane wrote: Does it work if you drop --enable-nls? (It'd likely be worth fixing if so, but I'm trying to narrow the possible causes.) Nope... OK. Since 9.3 succeeds, it seems like it's a link problem we fixed at some point. Can you bisect to find where we fixed it? regards, tom lane I can try -- I haven't been very good at that. I can give you access to the machine and the id the Buildfarm runs under. (or give me a good process starting from a buildfarm layout). I will work on it on my FBSD setup. For the 9.2 error, try setting this in the config_env stanza: CFLAGS => '-O2 -fPIC', cheers andrew -- Andrew Dunstan EDB: https://www.enterprisedb.com That got us further, but it dies on startdb: $ cat startdb-C-1.log waiting for server to start stopped waiting pg_ctl: could not start server Examine the log output. === db log file == LOG: unrecognized configuration parameter "unix_socket_directories" in file "/home/pgbuildfarm/buildroot/REL9_2_STABLE/inst/data-C/postgresql.conf" line 576 FATAL: configuration file "/home/pgbuildfarm/buildroot/REL9_2_STABLE/inst/data-C/postgresql.conf" contains errors $ And we have the errors on the other branches with a temp(?) directory. -- Larry Rosenman http://www.lerctr.org/~ler Phone: +1 214-642-9640 E-Mail: l...@lerctr.org US Mail: 5708 Sabbia Dr, Round Rock, TX 78665-2106
Re: Buildfarm support for older versions
On 12/23/21 11:27, Larry Rosenman wrote: > >>> >> >> For the 9.2 error, try setting this in the config_env stanza: >> >> >> CFLAGS => '-O2 -fPIC', >> >> >> > > That got us further, but it dies on startdb: > $ cat startdb-C-1.log > waiting for server to start stopped waiting > pg_ctl: could not start server > Examine the log output. > === db log file == > LOG: unrecognized configuration parameter "unix_socket_directories" > in file > "/home/pgbuildfarm/buildroot/REL9_2_STABLE/inst/data-C/postgresql.conf" > line 576 > FATAL: configuration file > "/home/pgbuildfarm/buildroot/REL9_2_STABLE/inst/data-C/postgresql.conf" > contains errors > $ > > And we have the errors on the other branches with a temp(?) directory. looks like it's picking up the wrong perl libraries. Please show us the output of grep -v secret /home/pgbuildfarm/buildroot/REL9_2_STABLE/$animal.lastrun-logs/web-txn.data cheers andrew -- Andrew Dunstan EDB: https://www.enterprisedb.com
Re: Buildfarm support for older versions
On 12/23/2021 11:23 am, Andrew Dunstan wrote: On 12/23/21 11:27, Larry Rosenman wrote: For the 9.2 error, try setting this in the config_env stanza: CFLAGS => '-O2 -fPIC', That got us further, but it dies on startdb: $ cat startdb-C-1.log waiting for server to start stopped waiting pg_ctl: could not start server Examine the log output. === db log file == LOG: unrecognized configuration parameter "unix_socket_directories" in file "/home/pgbuildfarm/buildroot/REL9_2_STABLE/inst/data-C/postgresql.conf" line 576 FATAL: configuration file "/home/pgbuildfarm/buildroot/REL9_2_STABLE/inst/data-C/postgresql.conf" contains errors $ And we have the errors on the other branches with a temp(?) directory. looks like it's picking up the wrong perl libraries. Please show us the output of grep -v secret /home/pgbuildfarm/buildroot/REL9_2_STABLE/$animal.lastrun-logs/web-txn.data cheers andrew -- Andrew Dunstan EDB: https://www.enterprisedb.com $ grep -v secret web-txn.data $changed_this_run = ''; $changed_since_success = ''; $branch = 'REL9_2_STABLE'; $status = 1; $stage = 'StartDb-C:1'; $animal = 'gerenuk'; $ts = 1640276469; $log_data = 'Last file mtime in snapshot: Wed Dec 15 23:00:28 2021 GMT === waiting for server to start stopped waiting pg_ctl: could not start server Examine the log output. === db log file == LOG: unrecognized configuration parameter "unix_socket_directories" in file "/home/pgbuildfarm/buildroot/REL9_2_STABLE/inst/data-C/postgresql.conf" line 576 FATAL: configuration file "/home/pgbuildfarm/buildroot/REL9_2_STABLE/inst/data-C/postgresql.conf" contains errors '; $confsum = 'This file was created by PostgreSQL configure 9.2.24, which was generated by GNU Autoconf 2.63. Invocation command line was $ ./configure --enable-cassert --enable-debug --enable-nls --enable-tap-tests \\ --with-perl --prefix=/home/pgbuildfarm/buildroot/REL9_2_STABLE/inst \\ --with-pgport=5700 --cache-file=/home/pgbuildfarm/buildroot/accache-gerenuk/config-REL9_2_STABLE.cache hostname = borg.lerctr.org uname -m = amd64 uname -r = 14.0-CURRENT uname -s = FreeBSD uname -v = FreeBSD 14.0-CURRENT #26 main-n251898-acdc1de369a: Wed Dec 22 18:11:08 CST 2021 r...@borg.lerctr.org:/usr/obj/usr/src/amd64.amd64/sys/LER-MINIMAL /usr/bin/uname -p = amd64 PATH: /home/ler/.asdf/shims PATH: /home/ler/.asdf/bin PATH: /sbin PATH: /bin PATH: /usr/sbin PATH: /usr/bin PATH: /usr/local/sbin PATH: /usr/local/bin PATH: /home/ler/bin PATH: /home/ler/go/bin PATH: /usr/local/opt/terraform@0.12/bin PATH: /home/ler/bin $Script_Config = { \'alerts\' => {}, \'animal\' => \'gerenuk\', \'base_port\' => 5678, \'bf_perl_version\' => \'5.32.1\', \'build_env\' => { \'INCLUDES\' => \'-I/usr/local/include\', \'LDFLAGS\' => \'-L/usr/local/lib\' }, \'build_root\' => \'/home/pgbuildfarm/buildroot\', \'ccache_failure_remove\' => undef, \'config\' => [], \'config_env\' => { \'CFLAGS\' => \'-O2 -fPIC\' }, \'config_opts\' => [ \'--enable-cassert\', \'--enable-debug\', \'--enable-nls\', \'--enable-tap-tests\', \'--with-perl\' ], \'core_file_glob\' => \'*.core*\', \'extra_config\' => { \'DEFAULT\' => [ \'log_line_prefix = \\\'%m [%p:%l] %q%a \\\'\', \'log_connections = \\\'true\\\'\', \'log_disconnections = \\\'true\\\'\', \'log_statement = \\\'all\\\'\', \'fsync = off\' ] }, \'force_every\' => {}, \'git_ignore_mirror_failure\' => 1, \'git_keep_mirror\' => 1, \'git_use_workdirs\' => 1, \'invocation_args\' => [ \'--config\', \'/home/pgbuildfarm/conf/gerenuk.conf\', \'--test\', \'
Re: Buildfarm support for older versions
On 12/23/21 12:23, Andrew Dunstan wrote: > On 12/23/21 11:27, Larry Rosenman wrote: >>> For the 9.2 error, try setting this in the config_env stanza: >>> >>> >>> CFLAGS => '-O2 -fPIC', >>> >>> >>> >> That got us further, but it dies on startdb: >> $ cat startdb-C-1.log >> waiting for server to start stopped waiting >> pg_ctl: could not start server >> Examine the log output. >> === db log file == >> LOG: unrecognized configuration parameter "unix_socket_directories" >> in file >> "/home/pgbuildfarm/buildroot/REL9_2_STABLE/inst/data-C/postgresql.conf" >> line 576 >> FATAL: configuration file >> "/home/pgbuildfarm/buildroot/REL9_2_STABLE/inst/data-C/postgresql.conf" >> contains errors >> $ >> >> And we have the errors on the other branches with a temp(?) directory. > > looks like it's picking up the wrong perl libraries. Please show us the > output of > >grep -v secret > /home/pgbuildfarm/buildroot/REL9_2_STABLE/$animal.lastrun-logs/web-txn.data > > Oh, you need to be building with the buildfarm client's git tip, not the released code. Alternatively, apply this patch: https://github.com/PGBuildFarm/client-code/commit/75c762ba74fdec96ebf6c2433d61d3eeead825c3 cheers andrew -- Andrew Dunstan EDB: https://www.enterprisedb.com
Re: Buildfarm support for older versions
On 12/23/2021 11:58 am, Andrew Dunstan wrote: Oh, you need to be building with the buildfarm client's git tip, not the released code. Alternatively, apply this patch: https://github.com/PGBuildFarm/client-code/commit/75c762ba74fdec96ebf6c2433d61d3eeead825c3 with git tip: output attached. I can give access if needed. $ grep -v secret conf/gerenuk.conf # -*-perl-*- hey - emacs - this is a perl file =comment Copyright (c) 2003-2010, Andrew Dunstan See accompanying License file for license details =cut package PGBuild; use strict; use warnings FATAL => 'qw'; use vars qw(%conf); # use vars qw($VERSION); $VERSION = 'REL_4.19'; my $branch; { no warnings qw(once); $branch = $main::branch; } %conf =( # identity animal => "gerenuk", # source code scm => 'git', # or 'cvs' git_keep_mirror => 1, # manage a git mirror in the build root git_ignore_mirror_failure => 1, # ignore failures in fetching to mirror # use symlinked git repo from non-HEAD branches, # like git-new-workdir does git_use_workdirs => 1, scmrepo => undef, # default is community repo for either type scm_url => undef, # webref for diffs on server - use default for community # git_reference => undef, # for --reference on git repo # cvsmethod => 'update', # or 'export' use_git_cvsserver => undef, # or 'true' if repo is a git cvsserver # external commands and control make => 'gmake', # or gmake if required. can include path if necessary. make_jobs => 10, # >1 for parallel "make" and "make check" steps tar_log_cmd => undef, # default is "tar -z -cf runlogs.tgz *.log" # replacement must have the same effect # max time in seconds allowed for a single branch run # undef/0 means unlimited wait_timeout => undef, # where and how to build # must be absolute, can be either Unix or Windows style for MSVC # undef means default, buildroot dir in script directory build_root => '/home/pgbuildfarm/buildroot', , # or '/path/to/buildroot', use_vpath => undef, # set true to do vpath builds # path to directory with auxiliary web script # if relative, the must be relative to buildroot/branch # Now only used on older Msys installations # aux_path => "../..", keep_error_builds => 0, core_file_glob => "*.core*", # Linux style, use "*.core" for BSD # where to report status target => "https://buildfarm.postgresql.org/cgi-bin/pgstatus.pl";, # where to report change in OS version or compiler version upgrade_target => "https://buildfarm.postgresql.org/cgi-bin/upgrade.pl";, # change this to a true value if using MSVC, in which case also # see MSVC section below using_msvc => undef, # if force_every is a scalar it will be used on all branches, like this # for legacy reasons: # force_every => 336 , # max hours between builds, undef or 0 = unforced # we now prefer it to be a hash with branch names as the keys, like this # # this setting should be kept conservatively high, or not used at all - # for the most part it's best to let the script decide if something # has changed that requires a new run for the branch. # # an entry with a name of 'default' matches any branch not named force_every => { # HEAD => 48, # REL8_3_STABLE => 72, # default => 168, }, # alerts are triggered if the server doesn't see a build on a branch after # this many hours, and then sent out every so often, alerts => { #HEAD => { alert_after => 72, alert_every => 24 }, # REL8_1_STABLE => { alert_after => 240, alert_every => 48 }, }, # include / exclude patterns for files that trigger a build # if both are specified then they are both applied as filters # undef means don't ignore anything. # exclude qr[^doc/|\.po$] to ignore changes to docs and po files # (recommended) # undef means null filter. trigger_exclude => qr[^doc/|\.po$], trigger_include => undef, # settings for mail notices - default to notifying nobody # these lists contain addresses to be notified # must be complete email addresses, as the email is sent from the server mail_events =>{ all => [], # unconditional fail => ["ler\@lerctr.org"], # if this build fails change => ["ler\@lerctr.org"], # if this build causes a state change green => ["ler\@lerctr.org"], # if this build causes a state change to/from OK }, # if this flag is set and ccache is used, an unsuccessful run will result # in the removal of the ccache directory (and you need to make sure that # its parent is writable). The default is off - ccache should be able to # handle failures, although there have been suspicions in the past that # it's not quite as reliable as we'd want, and thus we have this option. ccache_failure_remove => u