[ https://issues.apache.org/jira/browse/HDFS-15533?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Uma Maheswara Rao G resolved HDFS-15533. ---------------------------------------- Fix Version/s: 3.4.0 Hadoop Flags: Reviewed Resolution: Fixed I have just committed this to trunk. Thanks [~ayushtkn] for reviews! > Provide DFS API compatible class, but use ViewFileSystemOverloadScheme inside > ----------------------------------------------------------------------------- > > Key: HDFS-15533 > URL: https://issues.apache.org/jira/browse/HDFS-15533 > Project: Hadoop HDFS > Issue Type: Sub-task > Components: dfs, viewfs > Affects Versions: 3.4.0 > Reporter: Uma Maheswara Rao G > Assignee: Uma Maheswara Rao G > Priority: Major > Fix For: 3.4.0 > > > I have been working on a thought from last week is that, we wanted to provide > DFS compatible APIs with mount functionality. So, that existing DFS > applications can work with out class cast issues. > When we tested with other components like Hive and HBase, I noticed some > classcast issues. > {code:java} > HBase example: > java.lang.ClassCastException: > org.apache.hadoop.fs.viewfs.ViewFileSystemOverloadScheme cannot be cast to > org.apache.hadoop.hdfs.DistributedFileSystemjava.lang.ClassCastException: > org.apache.hadoop.fs.viewfs.ViewFileSystemOverloadScheme cannot be cast to > org.apache.hadoop.hdfs.DistributedFileSystem at > org.apache.hadoop.hbase.util.FSUtils.getDFSHedgedReadMetrics(FSUtils.java:1748) > at > org.apache.hadoop.hbase.regionserver.MetricsRegionServerWrapperImpl.<init>(MetricsRegionServerWrapperImpl.java:146) > at > org.apache.hadoop.hbase.regionserver.HRegionServer.handleReportForDutyResponse(HRegionServer.java:1594) > at > org.apache.hadoop.hbase.regionserver.HRegionServer.run(HRegionServer.java:1001) > at java.lang.Thread.run(Thread.java:748){code} > {code:java} > Hive: > |io.AcidUtils|: Failed to get files with ID; using regular API: Only > supported for DFS; got class > org.apache.hadoop.fs.viewfs.ViewFileSystemOverloadScheme{code} > SO, here the implementation details are like follows: > We extended DistributedFileSystem and created a class called " > ViewDistributedFileSystem" > This vfs=ViewFirstibutedFileSystem, try to initialize > ViewFileSystemOverloadScheme. If success call will delegate to vfs. If fails > to initialize due to no mount points, or other errors, it will just fallback > to regular DFS init. If users does not configure any mount, system will > behave exactly like today's DFS. If there are mount points, vfs functionality > will come under DFS. > I have a patch and will post it in some time. > > > -- This message was sent by Atlassian Jira (v8.3.4#803005) --------------------------------------------------------------------- To unsubscribe, e-mail: hdfs-dev-unsubscr...@hadoop.apache.org For additional commands, e-mail: hdfs-dev-h...@hadoop.apache.org