Recent failures on buildfarm member hornet
Tom Lane <tgl@sss.pgh.pa.us>
From: Tom Lane <tgl@sss.pgh.pa.us>
To: Noah Misch <noah@leadboat.com>
Cc: pgsql-hackers@lists.postgresql.org, David Rowley <dgrowleyml@gmail.com>
Date: 2020-10-06T00:42:15Z
Lists: pgsql-hackers
hornet has failed its last five runs with
2020-10-05 22:45:42.784 UTC [34734498:40] pg_regress/create_aggregate LOG: statement: create aggregate my_percentile_disc(float8 ORDER BY anyelement) (
stype = internal,
sfunc = ordered_set_transition,
finalfunc = percentile_disc_final,
finalfunc_extra = true,
finalfunc_modify = read_write
);
TRAP: FailedAssertion("variadicArgType != InvalidOid", File: "pg_aggregate.c", Line: 216, PID: 34734498)
After looking at the commits immediately preceding the first failure, and
digging around in the aggregate-related code, it seems like commit
cc99baa43 (Improve pg_list.h's linitial(), lsecond() and co macros)
must've broke it somehow. The nearest thing that I can see to a theory
is that where DefineAggregate does
numDirectArgs = intVal(lsecond(args));
it's coming out with the wrong result, leading to a failure of the
numDirectArgs-vs-numArgs sanity check in AggregateCreate. But how could
that be? I hesitate to blame the compiler twice in one week. OTOH, it's
a not-very-mainstream compiler on a not-very-mainstream architecture.
Noah, can you poke into this in a little more detail and try to verify
what is happening?
regards, tom lane
Commits
-
Fix optimization hazard in gram.y's makeOrderedSetArgs(), redux.
- abfce4e46870 9.5.24 landed
- eb48619d01d7 9.6.20 landed
- 9f3d3fb8702b 10.15 landed
- e3868c7d59d4 11.10 landed
- 8b231d975328 12.5 landed
- dc14aa038e20 13.1 landed
- 8d2a01ae12cd 14.0 landed
-
Improve pg_list.h's linitial(), lsecond() and co macros
- cc99baa43e0e 14.0 cited