DataX icon indicating copy to clipboard operation
DataX copied to clipboard

修复hdfs reader读取指定目录下检验空文件类型报错的bug,对正则表达式的目录进行增强。

Open FuYouJ opened this issue 2 years ago • 0 comments

当 HDFS 的需要读取数据的文件夹下有存在一个大小为0空文件时,并且此时在hdfsreader的path配置的为此目录时会报如下的错误 。 image

DataX 的 hdfsreader 时直接配置读取的HDFS 目录后,如果此目录下存在空文件时会报异常,尽管此文件类型是合法的。 这里的修复逻辑是:调用filesStatus的getlen()判断文件长度,如果是0就跳过类型判断。 image 。 另外还对正则表达式的判断做了增强。 image 之前的代码: if (hdfsPath.contains("*") || hdfsPath.contains("?")) { 之后的代码 if (Pattern.compile("\\*|\\?|\\[\\^?\\w+\\]|\\[\\^?\\w-\\w\\]|\\{[\\w\\{\\}\\,]+\\}").matcher(hdfsPath).find()) {

FuYouJ avatar Jan 14 '23 06:01 FuYouJ