boolean isDone() {
    doneLock.lock();
    try {
      return this.doneTxid != NOT_DONE;
    } finally {
      doneLock.unlock();
    }
  }
@param txid the transaction id at which this future 'completed'.
@param t    Can be null. Set if we are 'completing' on error (and this 't' is the error).
@return True if we successfully marked this outstanding future as completed/done. Returns false
        if this future is already 'done' when this method called.
hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/wal/SyncFuture.java