Hi,
On 2019-08-21 10:58:54 +0900, Michael Paquier wrote:
> On Tue, Aug 20, 2019 at 09:05:53AM -0700, Andres Freund wrote:
> > I think the error message ought be reformulated, so users have a chance
> > to actually understand what they need to change to avoid the error. At
> > least something roughly like "too many jobs for this platform's select()".
>
> pgbench needs an extra fix then?
Well, there the commandline option talks about clients? Whereas
vacuumdb/reindexdb talk about jobs, but the old message talked about
clients. So no, I don't think it makes sense to adapt it the same way.
> > ISTM that we should fail in ParallelSlotsSetup(), rather than
> > ParallelSlotsGetIdle() though? That's always going to be earlier, and
> > there's no way to get into the problematic situation at a later point,
> > no?
>
> Okay, done this way. What do you think about the attached?
> --
> Michael
> @@ -246,6 +232,18 @@ ParallelSlotsSetup(const char *dbname, const char *host, const char *port,
> {
> conn = connectDatabase(dbname, host, port, username, prompt_password,
> progname, echo, false, true);
> +
> + /*
> + * Fail immediately if trying to use an index in an unsupported
> + * range. Doing a hard exit here is not beautiful, but that's
> + * not worth complicating the logic.
> + */
"that's not worth" sounds odd to me in the above sentence. I don't quite
get the half-hearted rewrite of the comment from pgbench.c.
Greetings,
Andres Freund