[CP] fix external table core

This commit is contained in:
SevenJ-swj
2023-10-10 02:10:24 +00:00
committed by ob-robot
parent 669030309a
commit 925e08f096

View File

@ -142,15 +142,16 @@ int ObExternalDataAccessDriver::get_file_list(const ObString &path,
} else if (get_storage_type() == OB_STORAGE_FILE) {
OZ (file_dirs.push_back(path));
for (int64_t i = 0; OB_SUCC(ret) && i < file_dirs.count(); i++) {
ObFullPathArrayOp dir_op(file_dirs, file_dirs.at(i), allocator);
ObFullPathArrayOp file_op(file_urls, file_dirs.at(i), allocator);
ObString file_dir = file_dirs.at(i);
ObFullPathArrayOp dir_op(file_dirs, file_dir, allocator);
ObFullPathArrayOp file_op(file_urls, file_dir, allocator);
dir_op.set_dir_flag();
if (file_dirs.at(i).case_compare(".") == 0
|| file_dirs.at(i).case_compare("..") == 0) {
if (file_dir.case_compare(".") == 0
|| file_dir.case_compare("..") == 0) {
//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));
} 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));
} else if (file_dirs.count() + file_urls.count() > MAX_VISIT_COUNT) {
ret = OB_ERR_UNEXPECTED;