https://bugs.openldap.org/show_bug.cgi?id=9584
--- Comment #7 from Howard Chu hyc@openldap.org --- (In reply to Ondřej Kuzník from comment #6)
By serializing the start, one consumer will pull down the bulk of the data, and then when it finishes, the next consumer will be using the latest cookie when it talks to its provider, so no redundant data will be downloaded.
In that case, the other threads seem to be busy looping until the lock is available, we should probably make it either wait on a condition or suspend the tasks in a future release.
Agreed. It would have made more sense to have only a single task iterate through all of the configured consumers, at least for this startup refresh.
I guess instead of the busy loop I can just exit the task and explicitly re-enable it later. Will look into it.