Re: gs_group_1 crashing on 13beta2/s390x
Andres Freund <andres@anarazel.de>
From: Andres Freund <andres@anarazel.de>
To: Christoph Berg <myon@debian.org>, Tom Lane <tgl@sss.pgh.pa.us>, Andrew Gierth <andrew@tao11.riddles.org.uk>, PostgreSQL Hackers <pgsql-hackers@postgresql.org>
Date: 2020-10-13T19:21:41Z
Lists: pgsql-hackers
Hi, On 2020-09-28 14:22:01 +0200, Christoph Berg wrote: > Re: Andres Freund > > > > Ok, but given that Debian is currently targeting 22 architectures, I doubt the PostgreSQL buildfarm covers all of them with the extra JIT option, so I should probably make sure to do that here when running tests. > > > > > > +1. I rather doubt our farm is running this type of test on anything > > > but x86_64. > > > > There's quite a few arm animals and at least one mips animal that do > > some minimal coverage of JITing (i.e. the queries that are actually > > somewhat expensive). I pinged two owners asking whether one of the arm > > animals could be changed to force JITing. > > I pushed a change that should enable LLVM-10-JIT-testing everywhere [*] > and (admittedly to my surprise) all other architectures passed just > fine: > > https://buildd.debian.org/status/logs.php?pkg=postgresql-13&ver=13.0-2 Thanks! > For the record, the architectures with llvm disabled are these: > > clang-10 [!alpha !hppa !hurd-i386 !ia64 !kfreebsd-amd64 !kfreebsd-i386 !m68k !powerpc !riscv64 !s390x !sh4 !sparc64 !x32], !powerpc doesn't exclude ppc64, I assume? > After the tests I realized that LLVM 11 is also already packaged, but > s390x still segfaults with that version. > > Christoph > > [*] apparently pgbench --temp-config=/no/such/file is not an error, > which makes verifying this change a bit harder pgbench? I assume you mean pg_regress? FWIW, an easy way to enable JIT for just about all tests, including tap tests, is to set PGOPTIONS='-c jit=1 -c jit_above_cost=0 ...' in the environment before starting the tests. Can a non-debian dev get access to a s390x? It'd be nice to isolate this enough to report a bug to LLVM - and that's probably a lot easier for me than you... My guess would be that some relocation processing or such is off. Greetings, Andres Freund
Commits
-
llvmjit: Work around bug in LLVM 3.9 causing crashes after 72559438f92.
- c835c7ffe21d 12.5 landed
- 4a4f4487d2d2 11.10 landed
- fe2a16d8b3e6 14.0 landed
- efc9a8e9800c 13.1 landed
-
llvmjit: Also copy parameter / return value attributes from template functions.
- f3dee5b9aba6 11.10 landed
- c8a2bb0f1abf 12.5 landed
- ae3e75abab22 13.1 landed
- 72559438f92f 14.0 landed