public ImmutableCollection<HStoreFile> close() throws IOException {
    // findbugs can not recognize storeEngine.writeLock is just a lock operation so it will report
    // UL_UNRELEASED_LOCK_EXCEPTION_PATH, so here we have to use two try finally...
    // Change later if findbugs becomes smarter in the future.
    this.archiveLock.lock();
    try {
      this.storeEngine.writeLock();
      try {
        return closeWithoutLock();
      } finally {
        this.storeEngine.writeUnlock();
      }
    } finally {
      this.archiveLock.unlock();
    }
  }
Close all the readers We don't need to worry about subsequent requests because the Region holds
a write lock that will prevent any more reads or writes.
@return the {@link StoreFile StoreFiles} that were previously being used.
@throws IOException on failure
hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HStore.java