Re: BUG #15964: vacuumdb.c:187:10: error: use of undeclared identifier 'FD_SETSIZE'

Andres Freund <andres@anarazel.de>

From: Andres Freund <andres@anarazel.de>
To: Michael Paquier <michael@paquier.xyz>
Cc: Alvaro Herrera <alvherre@2ndquadrant.com>, Tom Lane <tgl@sss.pgh.pa.us>, Dilip Kumar <dilipbalaut@gmail.com>, jungleboogie0@gmail.com, pgsql-bugs@lists.postgresql.org
Date: 2019-08-22T15:09:45Z
Lists: pgsql-bugs
Hi,

On 2019-08-22 10:47:39 +0900, Michael Paquier wrote:
> On Wed, Aug 21, 2019 at 10:34:49AM -0400, Alvaro Herrera wrote:
> > Ah, yes, that's right -- my system's open(3p) manpage says:
> > 
> >        The  open()  function  shall return a file descriptor for the named file
> >        that is the lowest file descriptor not currently open for that process.
> 
> Ah, well.  In this case, what about that?
> ("too many jobs for this platform's select() -- try %d", i-1)

I don't think the - 1 bit is likely to be helpful, as it's too likely to
be inaccurate.

> I don't think that it is a good idea to use the option name -j/--jobs
> directly in the error string as scripts_parallel.c should not have any
> knowledge of how the option layer is in the tools using its APIs.

This isn't a particularly general API - it's in
src/bin/scripts/scripts_parallel.h. So I think a better error message is
more than worth the slight decrease in generality.

Greetings,

Andres Freund



Commits

  1. Fix error handling of vacuumdb when running out of fds

  2. Fix error handling of vacuumdb and reindexdb when running out of fds

  3. Fix compilation failure of vacuumdb and reindexdb with OpenBSD

  4. Improve Assert output

  5. Refactor parallelization processing code in src/bin/scripts/

  6. vacuumdb: enable parallel mode