Hi, On 2021-05-07 00:30:11 -0400, Tom Lane wrote: > Andres Freund <and...@anarazel.de> writes: > > On 2021-05-06 21:43:32 -0400, Tom Lane wrote: > >> That I'm not sure about. gdb is certainly installed, and thorntail is > >> visibly running the current buildfarm client and is configured with the > >> correct core_file_glob, and I can report that the crash did leave a 'core' > >> file in the data directory (so it's not a case of systemd commandeering > >> the core dump). Seems like core-file collection should've worked > >> ... unless maybe it's not covering TAP tests at all? > > > I suspect that is it - there's not really a good way for the buildfarm > > client to even know where there could be data directories :(. > > Does it need to? I'm envisioning "find tmp_check -name '$core_file_glob'" > or something along that line.
Yea, it'd be doable that way. It'd be a bit harder to associate the core files with specific tests though. But I now checked, and it indeed checks for core files in a specific subset of tests, and that that test only globs inside the passed-in datadir. sub get_stack_trace { return get_stack_trace_cygwin(@_) if ($ENV{CYGWIN}); my $bindir = shift; my $pgdata = shift; # no core = no result my @cores = glob("$pgdata/$core_file_glob"); return () unless @cores; ... andres@awork3:~/src/pgbuildfarm-client$ ack get_stack_trace run_build.pl 1601: get_stack_trace("$installdir/bin", "$installdir/data-$locale"); 1637: get_stack_trace("$installdir/bin", "$installdir/data-$locale"); 1711: my @trace = get_stack_trace("$installdir/bin", "$installdir/data"); 1750: get_stack_trace("$installdir/bin", "$installdir/data-$locale"); 1798: get_stack_trace("$installdir/bin", "$installdir/data-$locale"); 2010: my @trace = get_stack_trace("$binloc$installdir/bin", "$base/data"); 2061: get_stack_trace("$base/install$installdir/bin", "$base/data"); PGBuild/Utils.pm 30: get_stack_trace cleanlogs writelog 148:sub get_stack_trace_cygwin 173:sub get_stack_trace 175: return get_stack_trace_cygwin(@_) if ($ENV{CYGWIN}); PGBuild/Modules/RedisFDW.pm 214: get_stack_trace("$installdir/bin", "$installdir/data-$locale"); PGBuild/Modules/TestUpgrade.pm 148: my @trace = get_stack_trace("$tmp_bin_dir", "$tmp_data_dir"); PGBuild/Modules/TestCollateLinuxUTF8.pm 122: get_stack_trace("$installdir/bin", "$installdir/data-$locale"); PGBuild/Modules/TestICU.pm 110: get_stack_trace("$installdir/bin", "$installdir/data-$locale"); Greetings, Andres Freund