[ https://issues.apache.org/jira/browse/CRUNCH-513?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14517995#comment-14517995 ]
Andy Nelson commented on CRUNCH-513: ------------------------------------ Upon further investigation, I understand the issue now. The change here[1] shifted from using listStatus to globStatus. However, FileSystem#globStatus does not return child folders like DistributedFileSystem#listStatus does. FileSystem#globStatus always returns the parent directory that was passed to it as a FileStatus array of length 1. The documentation for globStatus is not very clear either so I am not sure what it is supposed to be doing. This could be a defect with Hadoop or it could be working as intended. I know the change[2] was made to account for compatibility differences between hadoop 1 and hadoop 2 but I am not sure what those were. Perhaps you can shed additional light on that, although it was almost a year ago so maybe not. If we want to continue using globStatus in its current state, we can add the recursion to traverse the child directories ourselves. I will attach a different patch that addresses that concern. [1] https://github.com/apache/crunch/compare/apache-crunch-0.8.2...apache-crunch-0.8.4#diff-ebb16d4834e18a2988cfe2f4de1ea9f2R116 [2] https://github.com/apache/crunch/commit/9a0c9e99546eff051033274b773a6c0925f30177 > HFileSource not calculating size correctly for nested pathes > ------------------------------------------------------------ > > Key: CRUNCH-513 > URL: https://issues.apache.org/jira/browse/CRUNCH-513 > Project: Crunch > Issue Type: Bug > Affects Versions: 0.10.0, 0.8.3 > Reporter: Andy Nelson > Attachments: Crunch-513.patch > > > The cause of this is that getInternalSize[1] does not traverse the child > paths to determine the size. > I have the fix in a patch that I will attach but I have not been able to > successfully append to the integration tests to see this failure. This issue > only appears to be a problem when using the DistributedFileSystem but the > tests for HFileSource use RawLocalFileSystem. I see there are additional > tests that use the hadoop mini cluster, but I was not able to implement > correctly. > [1] > https://github.com/apache/crunch/blob/apache-crunch-0.8.3/crunch-hbase/src/main/java/org/apache/crunch/io/hbase/HFileSource.java#L116 -- This message was sent by Atlassian JIRA (v6.3.4#6332)