Re: Add parallelism and glibc dependent only options to reindexdb

Michael Paquier <michael@paquier.xyz>

From: Michael Paquier <michael@paquier.xyz>
To: Julien Rouhaud <rjuju123@gmail.com>
Cc: Alvaro Herrera <alvherre@2ndquadrant.com>, Peter Eisentraut <peter.eisentraut@2ndquadrant.com>, Thomas Munro <thomas.munro@gmail.com>, Daniel Verite <daniel@manitou-mail.org>, Tom Lane <tgl@sss.pgh.pa.us>, PostgreSQL Hackers <pgsql-hackers@lists.postgresql.org>, Kevin Grittner <kgrittn@gmail.com>
Date: 2019-07-19T00:35:29Z
Lists: pgsql-hackers
On Thu, Jul 18, 2019 at 09:45:14AM +0900, Michael Paquier wrote:
> On Wed, Jul 17, 2019 at 07:46:10PM +0200, Julien Rouhaud wrote:
>> Is it ok to call pg_free(slots) and let caller have a pointer pointing
>  to freed memory?
> 
> The interface has a Setup call which initializes the whole thing, and
> Terminate is the logical end point, so having the free logic within
> the termination looks more consistent to me.  We could now have actual
> Init() and Free() but I am not sure that this justifies the move as
> this complicates the scripts using it.

I have reconsidered this point, moved the pg_free() call out of the
termination logic, and committed the first patch after an extra lookup
and more polishing.

For the second patch, could you send a rebase with a fix for the
connection slot when processing the reindex commands?
--
Michael

Commits

  1. Add support for --jobs in reindexdb

  2. Remove more progname references in vacuumdb.c

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