[ 
https://issues.apache.org/jira/browse/DRILL-5365?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16495707#comment-16495707
 ] 

ASF GitHub Bot commented on DRILL-5365:
---------------------------------------

ilooner commented on a change in pull request #796: DRILL-5365: DrillFileSystem 
setConf in constructor. DrillFileSystem c…
URL: https://github.com/apache/drill/pull/796#discussion_r191928922
 
 

 ##########
 File path: 
exec/java-exec/src/main/java/org/apache/drill/exec/store/dfs/DrillFileSystem.java
 ##########
 @@ -89,22 +89,36 @@ public DrillFileSystem(Configuration fsConf) throws 
IOException {
   }
 
   public DrillFileSystem(Configuration fsConf, OperatorStats operatorStats) 
throws IOException {
-    this.underlyingFs = FileSystem.get(fsConf);
+    this(fsConf, URI.create(fsConf.getRaw(FS_DEFAULT_NAME_KEY)), 
operatorStats);
+  }
+
+  public DrillFileSystem(Configuration fsConf, URI Uri, OperatorStats 
operatorStats) throws IOException {
+    this.underlyingFs = FileSystem.get(Uri, fsConf);
+    logger.trace("Configuration for the DrillFileSystem " + 
fsConf.getRaw(FS_DEFAULT_NAME_KEY) +
+        ", underlyingFs: " + this.underlyingFs.getUri());
     this.codecFactory = new CompressionCodecFactory(fsConf);
     this.operatorStats = operatorStats;
+    setConf(fsConf);
   }
 
   @Override
   public void setConf(Configuration conf) {
 
 Review comment:
   Agreed. Unfortunately setConf() is a public method declared in hadoop's 
FileSystem class. Additionally setConf() is called with a null argument 
everytime DrillFileSystem is initialized because the FileSystem constructor 
calls the Configured(Configuration conf) constructor and passes null for the 
configuration.
   
   What I can do is make the semantics of DrillFileSystem explicit by 
documenting that DrillFileSystem.setConf should never be called and by throwing 
an exception if DrillFileSystem.setConf is ever called after a DrillFileSystem 
object is constructed.

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


> FileNotFoundException when reading a parquet file
> -------------------------------------------------
>
>                 Key: DRILL-5365
>                 URL: https://issues.apache.org/jira/browse/DRILL-5365
>             Project: Apache Drill
>          Issue Type: Bug
>          Components: Storage - Hive
>    Affects Versions: 1.10.0
>            Reporter: Chun Chang
>            Assignee: Timothy Farkas
>            Priority: Major
>             Fix For: 1.14.0
>
>
> The parquet file is generated through the following CTAS.
> To reproduce the issue: 1) two or more nodes cluster; 2) enable 
> impersonation; 3) set "fs.default.name": "file:///" in hive storage plugin; 
> 4) restart drillbits; 5) as a regular user, on node A, drop the table/file; 
> 6) ctas from a large enough hive table as source to recreate the table/file; 
> 7) query the table from node A should work; 8) query from node B as same user 
> should reproduce the issue.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to