public List<StoreFileInfo> getStoreFiles(final String familyName) throws IOException {
    Path familyDir = ctx.getRegionFileSystem().getStoreDir(familyName);
    FileStatus[] files =
      CommonFSUtils.listStatus(ctx.getRegionFileSystem().getFileSystem(), familyDir);
    if (files == null) {
      if (LOG.isTraceEnabled()) {
        LOG.trace("No StoreFiles for: " + familyDir);
      }
      return null;
    }

    ArrayList<StoreFileInfo> storeFiles = new ArrayList<>(files.length);
    for (FileStatus status : files) {
      if (!StoreFileInfo.isValid(status)) {
        // recovered.hfiles directory is expected inside CF path when
        // hbase.wal.split.to.hfile to
        // true, refer HBASE-23740
        if (!HConstants.RECOVERED_HFILES_DIR.equals(status.getPath().getName())) {
          LOG.warn("Invalid StoreFile: {}", status.getPath());
        }
        continue;
      }
      StoreFileInfo info = ServerRegionReplicaUtil.getStoreFileInfo(conf,
        ctx.getRegionFileSystem().getFileSystem(), ctx.getRegionInfo(),
        ctx.getRegionFileSystem().getRegionInfoForFS(), familyName, status.getPath(), this);
      storeFiles.add(info);

    }
    return storeFiles;
  }
Returns the store files available for the family. This methods performs the filtering based on
the valid store files.
@param familyName Column Family Name
@return a set of {@link StoreFileInfo} for the specified family.
hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/storefiletracker/DefaultStoreFileTracker.java