You are viewing a plain text version of this content. The canonical link for it is here.
Posted to hdfs-issues@hadoop.apache.org by "Masatake Iwasaki (JIRA)" <ji...@apache.org> on 2015/05/15 10:53:00 UTC
[jira] [Commented] (HDFS-8407) libhdfs hdfsListDirectory() API has
different behavior than documentation
[ https://issues.apache.org/jira/browse/HDFS-8407?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14545178#comment-14545178 ]
Masatake Iwasaki commented on HDFS-8407:
----------------------------------------
Oops. [~surendrasingh] set assignee before I reload the page. Sorry for breaking in...
> libhdfs hdfsListDirectory() API has different behavior than documentation
> -------------------------------------------------------------------------
>
> Key: HDFS-8407
> URL: https://issues.apache.org/jira/browse/HDFS-8407
> Project: Hadoop HDFS
> Issue Type: Bug
> Components: HDFS
> Reporter: Juan Yu
> Assignee: surendra singh lilhore
> Attachments: HDFS-8407.001.patch
>
>
> The documentation says it returns NULL on error, but it could also return NULL when the directory is empty.
> /**
> * hdfsListDirectory - Get list of files/directories for a given
> * directory-path. hdfsFreeFileInfo should be called to deallocate memory.
> * @param fs The configured filesystem handle.
> * @param path The path of the directory.
> * @param numEntries Set to the number of files/directories in path.
> * @return Returns a dynamically-allocated array of hdfsFileInfo
> * objects; NULL on error.
> */
> {code}
> hdfsFileInfo *pathList = NULL;
> ...
> //Figure out the number of entries in that directory
> jPathListSize = (*env)->GetArrayLength(env, jPathList);
> if (jPathListSize == 0) {
> ret = 0;
> goto done;
> }
> ...
> if (ret) {
> hdfsFreeFileInfo(pathList, jPathListSize);
> errno = ret;
> return NULL;
> }
> *numEntries = jPathListSize;
> return pathList;
> {code}
> Either change the implementation to match the doc, or fix the doc to match the implementation.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)