Alvaro Herrera <alvherre@commandprompt.com> writes:
> Tom Lane escribi�:
>> Hmm, maybe we need to improve the code too. This example suggests that
>> there needs to be some limit on the worker launch rate, even if there
>> are so many databases that that means we don't meet naptime exactly.
> We already have a 100ms lower bound on the sleep time (see
> launcher_determine_sleep()). Maybe that needs to be increased?
Maybe. I hesitate to suggest a GUC variable ;-)
One thought is that I don't trust the code implementing the minimum
too much:
/* 100ms is the smallest time we'll allow the launcher to sleep */
if (nap->tv_sec <= 0 && nap->tv_usec <= 100000)
{
nap->tv_sec = 0;
nap->tv_usec = 100000; /* 100 ms */
}
What would happen if tv_sec is negative and tv_usec is say 500000?
Maybe negative tv_sec is impossible here, but ...
regards, tom lane