public static void listFilesInsideAcidDirectory(Path acidDir, FileSystem srcFs, List<Path> newFiles, PathFilter filter)
          throws IOException {
    // list out all the files/directory in the path
    FileStatus[] acidFiles = null;
    if (filter != null) {
      acidFiles = srcFs.listStatus(acidDir, filter);
    } else {
      acidFiles = srcFs.listStatus(acidDir);
    }

    if (acidFiles == null) {
      LOG.debug("No files added by this query in: " + acidDir);
      return;
    }
    LOG.debug("Listing files under " + acidDir);
    for (FileStatus acidFile : acidFiles) {
      // need to list out only files, ignore folders.
      if (!acidFile.isDirectory()) {
        newFiles.add(acidFile.getPath());
      } else {
        listFilesInsideAcidDirectory(acidFile.getPath(), srcFs, newFiles, null);
      }
    }
  }
Load Data commands for fullAcid tables write to base_x (if there is overwrite clause) or
delta_x_x directory - same as any other Acid write.  This method modifies the destPath to add
this path component.
@param writeId - write id of the operated table from current transaction (in which this operation is running)
@param stmtId - see {@link DbTxnManager#getStmtIdAndIncrement()}
@return appropriately modified path
ql/src/java/org/apache/hadoop/hive/ql/metadata/Hive.java