On 24 August 2017 at 11:15, Peter Eisentraut <peter.eisentr...@2ndquadrant.com> wrote: > Here is a slightly updated patch for consideration in the upcoming > commit fest.
Hi Peter, I just had a quick glance over this and wondered about 2 things. 1. Why a GUC and not a new per user option so it can be configured differently for different users? Something like ALTER USER ... WORKER LIMIT <n>; perhaps. I mentioned about this up-thread a bit. 2. + if (count > max_worker_processes_per_user) + { + ereport(LOG, + (errcode(ERRCODE_CONFIGURATION_LIMIT_EXCEEDED), + errmsg("too many worker processes for role \"%s\"", + GetUserNameFromId(GetUserId(), false)))); + LWLockRelease(BackgroundWorkerLock); + return false; Unless I've misunderstood something, it seems that this is going to give random errors to users which might only occur when they run queries against larger tables. Part of why it made sense not to count workers towards the CONNECTION LIMIT was the fact that we didn't want to throw these random errors when workers could not be obtained when we take precautions in other places to just silently have fewer workers. There's lots of discussions earlier in this thread about this and I don't think anyone was in favour of queries randomly working sometimes. -- David Rowley http://www.2ndQuadrant.com/ PostgreSQL Development, 24x7 Support, Training & Services -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers