code: @Override
  	public void write(ITuple key, NullWritable value) throws IOException {
  		if(isClosing()) {
  			throw new IOException("Index is already closing");
  		}
  		heartBeater.needHeartBeat();
  		try {
  			try {
  				batch.add(converter.convert(key, value));
  				if(batch.size() > batchSize) {
  					batchWriter.queueBatch(batch);
  					batch.clear();
  				}
  			} catch(SolrServerException e) {
  				throw new IOException(e);
  			}
  		} finally {
  			heartBeater.cancelHeartBeat();
  		}
  
  	}
docs: Write a record. This method accumulates records in to a batch, and when {@link #batchSize} items are present
  flushes it to the indexer. The writes can take a substantial amount of time, depending on {@link #batchSize}. If
  there is heavy disk contention the writes may take more than the 600 second default timeout.