HBASE-4754 has been filed.

FYI

On Sun, Nov 6, 2011 at 9:00 PM, Ted Yu <[email protected]> wrote:

> I dug through the code a little bit. Indeed the following exception was
> due to the difference in DistributedFileSystem.listStatus() between
> 0.20.205 and 0.22:
>
>
> 11/11/05 19:08:48 ERROR handler.CreateTableHandler: Error trying to
> create the table b
> java.io.FileNotFoundException: File
> hdfs://ip-10-110-254-200.ec2.
> internal:17020/hbase/b does not exist.
>        at
> org.apache.hadoop.hdfs.DistributedFileSystem.listStatus(DistributedFileSystem.java:387)
>
> In 0.20.205:
>   public FileStatus[] listStatus(Path p) throws IOException {
>     String src = getPathName(p);
>
>     // fetch the first batch of entries in the directory
>     DirectoryListing thisListing = dfs.listPaths(
>         src, HdfsFileStatus.EMPTY_NAME);
>
>     if (thisListing == null) { // the directory does not exist
>       return null;
>     }
>
> In 0.22:
>   @Override
>   public FileStatus[] listStatus(Path p) throws IOException {
>     String src = getPathName(p);
>
>     // fetch the first batch of entries in the directory
>     DirectoryListing thisListing = dfs.listPaths(
>         src, HdfsFileStatus.EMPTY_NAME);
>
>     if (thisListing == null) { // the directory does not exist
>       throw new FileNotFoundException("File " + p + " does not exist.");
>     }
>
> So in FSTableDescriptors.getTableInfoPath(), we should catch
> FileNotFoundException and treat it the same way as status being null.
>
> Cheers
>
>
> On Sun, Nov 6, 2011 at 6:38 PM, Roman Shaposhnik <[email protected]> wrote:
>
>> On Sun, Nov 6, 2011 at 4:12 PM, Roman Shaposhnik <[email protected]> wrote:
>> > Odd indeed. Whatever it was is now gone when I build from this SHA:
>> >    61b5659bf7971cfac32f3cf4fca0d3823b4c8f8c
>> > However, I can still reproduce it when I build from the previous SHA:
>> >    454a75d2eb122b198140a778d00d6e1bc086517e
>> >
>> > I think since it got fixed, it is probably not really worth pursuing.
>>
>> Here's the final deal -- this is Hadoop 0.22 related. I can reliably
>> reproduce
>> it if I enable the .22 profile. Here's how:
>>   $ git pull ; git checkout remotes/origin/0.92
>>   $ mvn clean assembly:assembly -DskipTests -Dhadoop.profile=22
>>   $ tar xzvf  -C /tmp/22 target/hbase-0.92.0-SNAPSHOT.tar.gz
>>   $ rm -rf /tmp/hbase*
>>   $ /tmp/22/hbase-0.92.0-SNAPSHOT/hbase-daemon.sh start master
>>   $ /tmp/22/hbase-0.92.0-SNAPSHOT/hbase shell
>>   11/11/06 18:13:50 WARN conf.Configuration: hadoop.native.lib is
>> deprecated. Instead, use io.native.lib.available
>>   11/11/06 18:13:50 WARN conf.Configuration: hadoop.native.lib is
>> deprecated. Instead, use io.native.lib.available
>>   11/11/06 18:13:50 WARN conf.Configuration: hadoop.native.lib is
>> deprecated. Instead, use io.native.lib.available
>>   11/11/06 18:13:50 WARN conf.Configuration: hadoop.native.lib is
>> deprecated. Instead, use io.native.lib.available
>>   HBase Shell; enter 'help<RETURN>' for list of supported commands.
>>   Type "exit<RETURN>" to leave the HBase Shell
>>   Version 0.92.0-SNAPSHOT, r61b5659bf7971cfac32f3cf4fca0d3823b4c8f8c,
>> Sun Nov  6 18:02:26 PST 2011
>>
>>   hbase(main):001:0> create 't', 'f'
>>
>> And it hangs.
>>
>> I'm about to attend a social function in the next couple of hours and
>> will probably
>> dig further tomorrow at ApacheCON.
>>
>> Thanks,
>> Roman.
>>
>
>

Reply via email to