[CP] fix external table core
This commit is contained in:
@ -142,15 +142,16 @@ int ObExternalDataAccessDriver::get_file_list(const ObString &path,
|
|||||||
} else if (get_storage_type() == OB_STORAGE_FILE) {
|
} else if (get_storage_type() == OB_STORAGE_FILE) {
|
||||||
OZ (file_dirs.push_back(path));
|
OZ (file_dirs.push_back(path));
|
||||||
for (int64_t i = 0; OB_SUCC(ret) && i < file_dirs.count(); i++) {
|
for (int64_t i = 0; OB_SUCC(ret) && i < file_dirs.count(); i++) {
|
||||||
ObFullPathArrayOp dir_op(file_dirs, file_dirs.at(i), allocator);
|
ObString file_dir = file_dirs.at(i);
|
||||||
ObFullPathArrayOp file_op(file_urls, file_dirs.at(i), allocator);
|
ObFullPathArrayOp dir_op(file_dirs, file_dir, allocator);
|
||||||
|
ObFullPathArrayOp file_op(file_urls, file_dir, allocator);
|
||||||
dir_op.set_dir_flag();
|
dir_op.set_dir_flag();
|
||||||
if (file_dirs.at(i).case_compare(".") == 0
|
if (file_dir.case_compare(".") == 0
|
||||||
|| file_dirs.at(i).case_compare("..") == 0) {
|
|| file_dir.case_compare("..") == 0) {
|
||||||
//do nothing
|
//do nothing
|
||||||
} else if (OB_FAIL(device_handle_->scan_dir(to_cstring(file_dirs.at(i)), file_op))) {
|
} else if (OB_FAIL(device_handle_->scan_dir(to_cstring(file_dir), file_op))) {
|
||||||
LOG_WARN("scan dir failed", K(ret));
|
LOG_WARN("scan dir failed", K(ret));
|
||||||
} else if (OB_FAIL(device_handle_->scan_dir(to_cstring(file_dirs.at(i)), dir_op))) {
|
} else if (OB_FAIL(device_handle_->scan_dir(to_cstring(file_dir), dir_op))) {
|
||||||
LOG_WARN("scan dir failed", K(ret));
|
LOG_WARN("scan dir failed", K(ret));
|
||||||
} else if (file_dirs.count() + file_urls.count() > MAX_VISIT_COUNT) {
|
} else if (file_dirs.count() + file_urls.count() > MAX_VISIT_COUNT) {
|
||||||
ret = OB_ERR_UNEXPECTED;
|
ret = OB_ERR_UNEXPECTED;
|
||||||
|
|||||||
Reference in New Issue
Block a user