hadoop-common-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Chris Nauroth (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (HADOOP-12717) NPE when trying to rename a directory in Windows Azure Storage FileSystem
Date Fri, 04 Mar 2016 00:31:41 GMT

    [ https://issues.apache.org/jira/browse/HADOOP-12717?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15179015#comment-15179015

Chris Nauroth commented on HADOOP-12717:

The proposed change makes sense to me.  (Note that {{AzureNativeFileSystemStore#getDirectorySet}}
also calls {{verifyAndConvertToStandardFormat}}, and that already has a similar null check.)

bq. I'm not sure what test we can add

It seems like you ought to be able to write a unit test that initializes an instance of {{AzureNativeFileSystemStore}}
using configuration that would cause {{verifyAndConvertToStandardFormat}} to return {{null}}.
 Calling {{isAtomicRenameKey}} right after that would trigger a {{NullPointerException}} like
shown in the issue description.  Then, after applying the null check fix, that same test would
no longer throw a {{NullPointerException}}, so the test would pass.  Did you try exploring

> NPE when trying to rename a directory in Windows Azure Storage FileSystem
> -------------------------------------------------------------------------
>                 Key: HADOOP-12717
>                 URL: https://issues.apache.org/jira/browse/HADOOP-12717
>             Project: Hadoop Common
>          Issue Type: Bug
>    Affects Versions: 2.7.0
>            Reporter: Robert Yokota
>            Assignee: Robert Yokota
>         Attachments: HADOOP-12717.001.patch, diff.txt
> Encountered an NPE when trying to use the HBase utility ExportSnapshot with Azure as
the target.  
> It turns out verifyAndConvertToStandardFormat is returning null when determining the
hbaseRoot, and this is being added to the atomicRenameDirs set.
> java.lang.NullPointerException
>         at org.apache.hadoop.fs.azure.AzureNativeFileSystemStore.isKeyForDirectorySet(AzureNativeFileSystemStore.java:1059)
>         at org.apache.hadoop.fs.azure.AzureNativeFileSystemStore.isAtomicRenameKey(AzureNativeFileSystemStore.java:1053)
>         at org.apache.hadoop.fs.azure.NativeAzureFileSystem.prepareAtomicFolderRename(NativeAzureFileSystem.java:2098)
>         at org.apache.hadoop.fs.azure.NativeAzureFileSystem.rename(NativeAzureFileSystem.java:1996)
>         at org.apache.hadoop.hbase.snapshot.ExportSnapshot.run(ExportSnapshot.java:944)
>         at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:70)
>         at com.yammer.calmie.snapshot.AbstractSnapshotUtil.exportSnapshot(AbstractSnapshotUtil.java:210)
>         at com.yammer.calmie.snapshot.AbstractSnapshotUtil.run(AbstractSnapshotUtil.java:79)
>         at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:70)
>         at com.yammer.calmie.snapshot.SnapshotAzureBlobUtil.main(SnapshotAzureBlobUtil.java:85)

This message was sent by Atlassian JIRA

View raw message