Improve allocation rate of the new Lucene synchronous batch backend


When testing low-scale I couldn't detect any performance improvement, still this has a lower contention point on the work queue and keeps the allocation rate of objects much lower.

Also improves the allocation rate for the garbage created by the `ErrorHandler`, at cost of being slightly less efficient in the case there actually is an error (which is hopefully a great bargain).

 - https://hibernate.atlassian.net/browse/HSEARCH-1725

WDYM by "drain"? Is it a common expression? It might be just me not knowing the term, but then chances are others don't know it as well. Some explanation would be nice.