From: | Andres Freund <andres(at)anarazel(dot)de> |
---|---|
To: | Christoph Berg <christoph(dot)berg(at)credativ(dot)de>, PostgreSQL Hackers <pgsql-hackers(at)postgresql(dot)org> |
Subject: | Re: Building pg_xlogdump reproducibly |
Date: | 2016-01-04 15:51:25 |
Message-ID: | 20160104155125.GD28025@awork2.anarazel.de |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
Hi,
On 2016-01-04 15:59:46 +0100, Christoph Berg wrote:
> The list of objects used to link pg_xlogdump is coming from
> $(wildcard *desc.c) which returns them in filesystem order. This makes
> the build result depend on this ordering, yielding different
> compilation results.
> -RMGRDESCSOURCES = $(notdir $(wildcard $(top_srcdir)/src/backend/access/rmgrdesc/*desc.c))
> +RMGRDESCSOURCES = $(sort $(notdir $(wildcard $(top_srcdir)/src/backend/access/rmgrdesc/*desc.c)))
> RMGRDESCOBJS = $(patsubst %.c,%.o,$(RMGRDESCSOURCES))
That's probably not the only non-deterministic rule in postgres, given
nobody paid attention tot that so far? At least transform modules added
in 9.5 (hstore_plpython et al) look like they might similar issues.
Wonder if we should instead define a wildcard wrapper in
Makefile.global.in that does the sorting, including an explanation?
Andres
From | Date | Subject | |
---|---|---|---|
Next Message | Robert Haas | 2016-01-04 15:52:24 | Re: Some 9.5beta2 backend processes not terminating properly? |
Previous Message | Robert Haas | 2016-01-04 15:51:20 | Re: custom function for converting human readable sizes to bytes |