anchor.diff:  <5> We want to execute the bulk every 10 000 requests
   <6> We want to flush the bulk every 5mb
   <7> We want to flush the bulk every 5 seconds whatever the number of requests
  -<8> Set the number of concurrent requests. A value of 0 means that only a single request will  be allowed to be
  +<8> Set the number of concurrent requests. A value of 0 means that only a single request will be allowed to be
       executed. A value of 1 means 1 concurrent request is allowed to be executed while accumulating new bulk requests.
   <9> Set a custom backoff policy which will initially wait for 100ms, increase exponentially and retries up to three
       times. A retry is attempted whenever one or more bulk item requests have failed with an `EsRejectedExecutionException`
       which indicates that there were too little compute resources available for processing the request. To disable backoff,
       pass `BackoffPolicy.noBackoff()`.
  +
  +By default, `BulkProcessor`:
  +
  +* sets bulkActions to `1000`
  +* sets bulkSize to `5mb`
  +* does not set flushInterval
  +* sets concurrentRequests to 1, which means an asynchronous execution of the flush operation.
  +* sets backoffPolicy to an exponential backoff with 8 retries and a start delay of 50ms. The total wait time is roughly 5.1 seconds.
  +
  +[[java-docs-bulk-processor-requests]]
  +==== Add requests
   
   Then you can simply add your requests to the `BulkProcessor`:
   
  
positive.code: bulkProcessor.add(new DeleteRequest("twitter", "tweet", "2"));
  --------------------------------------------------
  
  By default, `BulkProcessor`:
  
  * sets bulkActions to `1000`
  * sets bulkSize to `5mb`
  * does not set flushInterval
  * sets concurrentRequests to 1
  * sets backoffPolicy to an exponential backoff with 8 retries and a start delay of 50ms. The total wait time is roughly 5.1 seconds.
  
  When all documents are loaded to the `BulkProcessor` it can be closed by using `awaitClose` or `close` methods:
  
  
negative.code: all bulk requests to complete then returns `true`, if the specified waiting time elapses before all bulk requests complete,
  `false` is returned. The `close` method doesn't wait for any remaining bulk requests to complete and exits immediately.
  
  [[java-docs-bulk-processor-tests]]
  ==== Using Bulk Processor in tests
  
  If you are running tests with elasticsearch and are using the `BulkProcessor` to populate your dataset
  you should better set the number of concurrent requests to `0` so the flush operation of the bulk will be executed
  in a synchronous manner:
  
  [source,java]
  --------------------------------------------------
  BulkProcessor bulkProcessor = BulkProcessor.builder(client, new BulkProcessor.Listener() { /* Listener methods */ })
          .setBulkActions(10000)
          .setConcurrentRequests(0)
          .build();
  
  // Add your requests
  bulkProcessor.add(/* Your requests */);
  
  // Flush any remaining requests
  bulkProcessor.flush();
  
  // Or close the bulkProcessor if you don't need it anymore
  bulkProcessor.close();
  
  // Refresh your indices
  client.admin().indices().prepareRefresh().get();
  
  // Now you can start searching!
  client.prepareSearch().get();
  --------------------------------------------------
  
  