This is invoked by
#merge to possibly stall the incoming
thread when there are too many merges running or pending. The
default behavior is to force this thread, which is producing too
many segments for merging to keep up, to wait until merges catch
up. Applications that can take other less drastic measures, such
as limiting how many threads are allowed to index, can do nothing
here and throttle elsewhere.
If this method wants to stall but the calling thread is a merge
thread, it should return false to tell caller not to kick off
any new merges.