]> git.evergreen-ils.org Git - OpenSRF.git/commit
LP#1919502 C listener backlog loop speedbump
authorBill Erickson <berickxx@gmail.com>
Wed, 13 May 2020 17:55:43 +0000 (13:55 -0400)
committerGalen Charlton <gmc@equinoxOLI.org>
Thu, 2 Dec 2021 21:30:04 +0000 (16:30 -0500)
commit0821dbdc35d1fa646d3bb30ef97bbde1bcf15b97
tree45f758655775015022dcb90732ec83ebc4c87719
parentcaa10d7d3f4611e78918091dba6e40b2f37f6ba8
LP#1919502 C listener backlog loop speedbump

When the request backlog contains items in the C forking code, attempts
to process the request run in a tight loop without stopping until the
backlog is once again empty.  This can lead to spewing "Could not launch
a new child" warning messages at a high rate, saturating log files.

This commit adds a 1 second speed bump between backlog processing loops
to allow time for drones to complete their task and start processing the
remaining queued requests.  The delay has a secondary affect of limited
the speed of the warning log spewing.

This 1-second speedbump logic matches that of the Perl code.

Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Jeff Davis <jeff.davis@bc.libraries.coop>
Signed-off-by: Galen Charlton <gmc@equinoxOLI.org>
src/libopensrf/osrf_prefork.c