Re: pg_dump versus ancient server versions

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: Peter Eisentraut <peter(dot)eisentraut(at)enterprisedb(dot)com>
Cc: Andrew Dunstan <andrew(at)dunslane(dot)net>, Andres Freund <andres(at)anarazel(dot)de>, Robert Haas <robertmhaas(at)gmail(dot)com>, Bruce Momjian <bruce(at)momjian(dot)us>, Alvaro Herrera <alvherre(at)alvh(dot)no-ip(dot)org>, PostgreSQL Hackers <pgsql-hackers(at)lists(dot)postgresql(dot)org>
Subject: Re: pg_dump versus ancient server versions
Date: 2021-12-13 17:23:10
Message-ID: 853517.1639416190@sss.pgh.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

I wrote:
> Anyway, it seems like there's some consensus that 9.2 is a good
> stopping place for today. I'll push forward with
> (1) back-patching as necessary to make 9.2 and up build cleanly
> on the platforms I have handy;

I've done as much as I plan to do in that direction. As of the
respective branch tips, I see clean builds and check-world
results with minimal configure options in all branches back to 9.2
on Fedora 35 (gcc 11.2.1) and macOS Monterey (Apple clang 13.0.0).

A few notes for the archives' sake:

* As discussed, parallel check-world is unreliable before v10;
perhaps this is worth improving, but I doubt it. I did find
that aggressive parallelism in the build process is fine.

* On some compilers, pre-v10 branches produce this warning:

scan.c: In function 'yy_try_NUL_trans':
scan.c:10189:23: warning: unused variable 'yyg' [-Wunused-variable]
struct yyguts_t * yyg = (struct yyguts_t*)yyscanner; /* This var may be unused depending upon options. */

In principle we could back-patch 65d508fd4 to silence that,
but I think that fix is more invasive than what we want to
do in these branches. We lived with that warning for years
before figuring out how to get rid of it, so I think we can
continue to accept it in these branches.

* 9.2's plperl fails to compile on macOS:

./plperl.h:53:10: fatal error: 'EXTERN.h' file not found
#include "EXTERN.h"

This is evidently because 9.2 predates the "sysroot" hacking
we did later (5e2217131 and many many subsequent tweaks).
I judge this not worth the trouble to fix, because the argument
for supporting --with-perl in these branches is basically that
we need a PL with transforms to test pg_dump ... but transforms
didn't come in until 9.5. (Reviewing the commit log, I suppose
that 9.3 and 9.4 would also fail to build in some macOS
configurations, but by the same argument I see no need to work
further on those branches either. 9.5 does have all the
sysroot changes I can find in the log.)

regards, tom lane

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Blake, Geoff 2021-12-13 17:27:00 Re: Add spin_delay() implementation for Arm in s_lock.h
Previous Message Justin Pryzby 2021-12-13 17:19:35 Re: O(n) tasks cause lengthy startups and checkpoints