Re: [COMMITTERS] pgsql: Allow Pin/UnpinBuffer to operate in a lockfree manner. - Mailing list pgsql-hackers

From Andres Freund
Subject Re: [COMMITTERS] pgsql: Allow Pin/UnpinBuffer to operate in a lockfree manner.
Date
Msg-id 20160415025145.5bw4fgx3dbrh2cxn@alap3.anarazel.de
Whole thread Raw
In response to Re: [COMMITTERS] pgsql: Allow Pin/UnpinBuffer to operate in a lockfree manner.  (Tom Lane <tgl@sss.pgh.pa.us>)
List pgsql-hackers
On 2016-04-14 22:46:01 -0400, Tom Lane wrote:
> > Hm. Doing so I found the following in 9.3:
>
> > /home/andres/src/postgresql-9.3/src/bin/pg_dump/parallel.c:561:23: error: initializer for aggregate is not a
compile-timeconstant [-Werror,-Wc99-extensions]
 
> >                         int                     pipefd[2] = {pipeMW[PIPE_READ], pipeWM[PIPE_WRITE]};
> >                                                              ^~~~~~~~~~~~~~~~~
>
> > which is, afaics, the same class of issue we're hitting on master right
> > now. I apparently fixed that, via Robert, back in 59202fae0. I'd planned
> > to put up that animal (mylodon) for all branches, but given that that's
> > been unfixed for years I'm not sure. What do you think?
>
> Huh.  I just tried pademelon's compiler on the 9.3 branch, and sure
> enough it spits up on that:
>
> cc: "parallel.c", line 561: error 1521: Incorrect initialization.
> cc: "parallel.c", line 561: error 1521: Incorrect initialization.
> make: *** [parallel.o] Error 1
>
> I am not sure how come I missed seeing that at the time, but I certainly
> would have complained about it if I had chanced to try that compiler
> later in 9.3 development.  I stopped using that machine actively in
> mid-2013, though, so maybe I just failed to try that compiler for a
> period of a few months.  IIRC, when I got around to setting up pademelon
> as a buildfarm animal, I didn't have it building anything older than 9.4,
> so I missed seeing it on that end too.
>
> I'd vote for back-patching 59202fae0 and enforcing c89 compatibility
> all along the line.

Done.  Will be a bit till all branches have reported (that VM's getting
busy, it now runs four animals, one of them skink which is kinda
expensive CPU wise). But I checked before that I can do a basic compile
with the respective flags all the way to 9.1 (after pushing the enum
fixes).

Andres



pgsql-hackers by date:

Previous
From: Tom Lane
Date:
Subject: Re: [COMMITTERS] pgsql: Allow Pin/UnpinBuffer to operate in a lockfree manner.
Next
From: Robert Haas
Date:
Subject: more parallel query documentation