Java 强制HDFS globStatus跳过它不支持的目录';我没有权限

Java 强制HDFS globStatus跳过它不支持的目录';我没有权限,java,hadoop,hdfs,Java,Hadoop,Hdfs,所以我需要从HDFS中收集大量目录,它们本身包含子目录,我希望能够使用globStatus。我的路径模式基本上如下所示: "/directory/*/{opt1,opt2}/{opt1,opt2,opt3}*" 不幸的是,对于*捕获的某些目录,我没有执行权限(无法查看内容),但glob尝试查看内部,导致异常。有没有办法请求glob跳过它没有权限的目录,而不是完全失败 我知道还有其他方法可以实现同样的目标,但据我所知,这将比简单的glob更复杂,而且我认为需要更多对HDFS的请求 如果其他人遇到

所以我需要从HDFS中收集大量目录,它们本身包含子目录,我希望能够使用globStatus。我的路径模式基本上如下所示:

"/directory/*/{opt1,opt2}/{opt1,opt2,opt3}*"
不幸的是,对于*捕获的某些目录,我没有执行权限(无法查看内容),但glob尝试查看内部,导致异常。有没有办法请求glob跳过它没有权限的目录,而不是完全失败


我知道还有其他方法可以实现同样的目标,但据我所知,这将比简单的glob更复杂,而且我认为需要更多对HDFS的请求

如果其他人遇到这个问题,请回答这个问题

globStatus
的过滤行为是作为
文件系统
/
Globber
类的一部分在客户端完成的。实际上,它只是提交一系列
listStatus
命令并过滤返回值。要获得所描述的行为,需要一些自定义逻辑,但其效率不会低于
globStatus
API