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

Ted Yu commented on HBASE-4184:
-------------------------------

+1 on patch.
Andrew argued that HRegionInfo.getTableDesc() should be kept for one major 
release before being removed.

> CatalogJanitor doesn't work properly when "fs.default.name" isn't set in 
> config file.
> -------------------------------------------------------------------------------------
>
>                 Key: HBASE-4184
>                 URL: https://issues.apache.org/jira/browse/HBASE-4184
>             Project: HBase
>          Issue Type: Bug
>          Components: master
>            Reporter: Ming Ma
>            Assignee: Ming Ma
>         Attachments: HBASE-4184-trunk.patch
>
>
> In our system, hbase.rootdir is set to a hdfs path and hbase can figure out 
> the FileSystem and set "fs.default.name" accordingly on the Configuration 
> object and pass around including to RS. That is handled in HMaster.java and 
> MasterFileSystem.java.
> CatalogJanitor uses deprecated HRegionInfo.getTableDesc. The method creates a 
> default configuration and get FileSystem from there. That will be 
> RawLocalFileSystem. It returns the following exception.
> java.lang.IllegalArgumentException: Wrong FS: 
> hdfs://sea-esxi-0:54310/tmp/hbase/
> testtb/.tableinfo, expected: file:///
>         at org.apache.hadoop.fs.FileSystem.checkPath(FileSystem.java:454)
>         at 
> org.apache.hadoop.fs.RawLocalFileSystem.pathToFile(RawLocalFileSystem.java:67)
>         at 
> org.apache.hadoop.fs.RawLocalFileSystem.listStatus(RawLocalFileSystem.java:307)
>         at org.apache.hadoop.fs.FileSystem.listStatus(FileSystem.java:1085)
>         at org.apache.hadoop.fs.FileSystem.listStatus(FileSystem.java:1110)
>         at 
> org.apache.hadoop.fs.ChecksumFileSystem.listStatus(ChecksumFileSystem.java:494)
>         at 
> org.apache.hadoop.hbase.util.FSUtils.getTableInfoModtime(FSUtils.java:833)
>         at 
> org.apache.hadoop.hbase.util.FSTableDescriptors.get(FSTableDescriptors.java:127)
>         at 
> org.apache.hadoop.hbase.util.FSTableDescriptors.get(FSTableDescriptors.java:99)
>         at 
> org.apache.hadoop.hbase.HRegionInfo.getTableDesc(HRegionInfo.java:560)
>         at 
> org.apache.hadoop.hbase.master.CatalogJanitor$1.compare(CatalogJanitor.java:118)
>         at 
> org.apache.hadoop.hbase.master.CatalogJanitor$1.compare(CatalogJanitor.java:110)
>         at java.util.TreeMap.put(TreeMap.java:530)        at 
> org.apache.hadoop.hbase.master.CatalogJanitor$2.visit(CatalogJanitor.java:138)

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to