drill-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From GitBox <...@apache.org>
Subject [GitHub] [drill] Ben-Zvi commented on a change in pull request #1723: DRILL-7063: Seperate metadata cache file into summary, file metadata
Date Sun, 07 Apr 2019 17:43:58 GMT
Ben-Zvi commented on a change in pull request #1723: DRILL-7063: Seperate metadata cache file
into summary, file metadata
URL: https://github.com/apache/drill/pull/1723#discussion_r272844226
 
 

 ##########
 File path: exec/java-exec/src/main/java/org/apache/drill/exec/store/parquet/ParquetTableMetadataProviderImpl.java
 ##########
 @@ -109,19 +108,57 @@ public Path getSelectionRoot() {
     return selectionRoot;
   }
 
+  /**
+   * Returns list of metadata cache files
+   * @param p directory path of the cache file
+   * @param fs filesystem object
+   * @return list of cache files found in the given directory path
+   */
+  public List<Path> populateMetaPaths(Path p, DrillFileSystem fs) throws IOException
{
+    List<Path> metaFilepaths = new ArrayList<>();
+    for (String filename : Metadata.CURRENT_METADATA_FILENAMES) {
+      metaFilepaths.add(new Path(p, filename));
+    }
+    for (String filename : Metadata.OLD_METADATA_FILENAMES) {
+      // Read the older version of metadata file if the current version of metadata cache
files donot exist.
+      if (fileExists(fs, metaFilepaths)) {
+        return metaFilepaths;
+      }
+      metaFilepaths.clear();
+      metaFilepaths.add(new Path(p, filename));
+    }
+    if (fileExists(fs, metaFilepaths)) {
+      return metaFilepaths;
+    }
+    return new ArrayList<>();
+  }
+
+  public boolean fileExists(DrillFileSystem fs, List<Path> paths) throws IOException
{
+    if (paths.isEmpty()) {
+      return true;
+    }
 
 Review comment:
   very minor - if "paths" is empty, then the following for-loop would not iterate and "true"
would be returned anyway. So this "if" statement is redundant.

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
users@infra.apache.org


With regards,
Apache Git Services

Mime
View raw message