Before SERVER-43821, the query code would sometimes return PlanExecutor::FAILURE and sometimes throw an exception.
The range deletion code was handling exceptions correctly (they would bubble up to this AsyncTry/Until), but was swallowing PlanExecutor::FAILURE
SERVER-43821 made the query code always throw exceptions and the range deletion code always swallow them, but we should make the range deletion code actually always allow them to bubble up to the AsyncTry/Until.
Marking as backport requested to 4.4 to fix the similar bug with swallowing PlanExecutor::FAILURE on 4.4.