diff --git a/src/observer/virtual_table/ob_all_virtual_memstore_info.cpp b/src/observer/virtual_table/ob_all_virtual_memstore_info.cpp index 1ad38b80ef..f1f08a59be 100644 --- a/src/observer/virtual_table/ob_all_virtual_memstore_info.cpp +++ b/src/observer/virtual_table/ob_all_virtual_memstore_info.cpp @@ -112,18 +112,24 @@ int ObAllVirtualMemstoreInfo::get_next_tablet(ObTabletHandle &tablet_handle) int ret = OB_SUCCESS; while (OB_SUCC(ret)) { - if (OB_FAIL(ls_tablet_iter_.get_next_tablet(tablet_handle))) { - if (OB_ITER_END != ret) { - SERVER_LOG(WARN, "fail to get next tablet", K(ret)); - } - ret = OB_SUCCESS; // continue to next ls + if (!ls_tablet_iter_.is_valid()) { ObLS *ls = nullptr; if (OB_FAIL(get_next_ls(ls))) { if (OB_ITER_END != ret) { SERVER_LOG(WARN, "fail to get next ls", K(ret)); } - } else if (OB_FAIL(ls->get_tablet_svr()->build_tablet_iter(ls_tablet_iter_, true /* except_ls_inner_tablet */))) { - SERVER_LOG(WARN, "fail to get tablet iter", K(ret)); + } else if (OB_FAIL(ls->build_tablet_iter(ls_tablet_iter_, true /* except_ls_inner_tablet */))) { + SERVER_LOG(WARN, "fail to build tablet iter", K(ret)); + } + } + + if (OB_FAIL(ret)) { + } else if (OB_FAIL(ls_tablet_iter_.get_next_tablet(tablet_handle))) { + if (OB_ITER_END == ret) { + ls_tablet_iter_.reset(); + ret = OB_SUCCESS; + } else { + SERVER_LOG(WARN, "fail to get next tablet", K(ret)); } } else { break; @@ -202,7 +208,7 @@ int ObAllVirtualMemstoreInfo::process_curr_tenant(ObNewRow *&row) if (OB_ITER_END != ret) { SERVER_LOG(WARN, "get_next_memtable failed", K(ret)); } - } else if (NULL == mt) { + } else if (OB_ISNULL(mt)) { ret = OB_ERR_UNEXPECTED; SERVER_LOG(WARN, "mt shouldn't NULL here", K(ret), K(mt)); } else { diff --git a/src/observer/virtual_table/ob_all_virtual_tablet_ddl_kv_info.cpp b/src/observer/virtual_table/ob_all_virtual_tablet_ddl_kv_info.cpp index abd07f2085..8fb47a5b14 100644 --- a/src/observer/virtual_table/ob_all_virtual_tablet_ddl_kv_info.cpp +++ b/src/observer/virtual_table/ob_all_virtual_tablet_ddl_kv_info.cpp @@ -95,19 +95,24 @@ int ObAllVirtualTabletDDLKVInfo::get_next_ddl_kv_mgr(ObDDLKvMgrHandle &ddl_kv_mg { int ret = OB_SUCCESS; while (OB_SUCC(ret)) { - if (OB_FAIL(ls_tablet_iter_.get_next_ddl_kv_mgr(ddl_kv_mgr_handle))) { - if (!ls_tablet_iter_.is_valid() || OB_ITER_END == ret) { - ret = OB_SUCCESS; // continue to next ls - ObLS *ls = nullptr; - if (OB_FAIL(get_next_ls(ls))) { - if (OB_ITER_END != ret) { - SERVER_LOG(WARN, "fail to get next ls", K(ret)); - } - } else if (OB_FAIL(ls->get_tablet_svr()->build_tablet_iter(ls_tablet_iter_))) { - SERVER_LOG(WARN, "fail to get tablet iter", K(ret)); + if (!ls_tablet_iter_.is_valid()) { + ObLS *ls = nullptr; + if (OB_FAIL(get_next_ls(ls))) { + if (OB_ITER_END != ret) { + SERVER_LOG(WARN, "fail to get next ls", K(ret)); } + } else if (OB_FAIL(ls->build_tablet_iter(ls_tablet_iter_))) { + SERVER_LOG(WARN, "fail to build tablet iter", K(ret)); + } + } + + if (OB_FAIL(ret)) { + } else if (OB_FAIL(ls_tablet_iter_.get_next_ddl_kv_mgr(ddl_kv_mgr_handle))) { + if (OB_ITER_END == ret) { + ls_tablet_iter_.reset(); + ret = OB_SUCCESS; } else { - SERVER_LOG(WARN, "fail to get next ddl kv mgr", K(ret)); + SERVER_LOG(WARN, "fail to get next tablet", K(ret)); } } else { curr_tablet_id_ = ddl_kv_mgr_handle.get_obj()->get_tablet_id(); diff --git a/src/observer/virtual_table/ob_all_virtual_tablet_info.cpp b/src/observer/virtual_table/ob_all_virtual_tablet_info.cpp index e1bac3bcaf..72ae2c3e15 100644 --- a/src/observer/virtual_table/ob_all_virtual_tablet_info.cpp +++ b/src/observer/virtual_table/ob_all_virtual_tablet_info.cpp @@ -101,18 +101,24 @@ int ObAllVirtualTabletInfo::get_next_tablet(ObTabletHandle &tablet_handle) int ret = OB_SUCCESS; while (OB_SUCC(ret)) { - if (OB_FAIL(ls_tablet_iter_.get_next_tablet(tablet_handle))) { - if (OB_ITER_END != ret) { - SERVER_LOG(WARN, "fail to get next tablet", K(ret)); - } - ret = OB_SUCCESS; // continue to next ls + if (!ls_tablet_iter_.is_valid()) { ObLS *ls = nullptr; if (OB_FAIL(get_next_ls(ls))) { if (OB_ITER_END != ret) { SERVER_LOG(WARN, "fail to get next ls", K(ret)); } - } else if (OB_FAIL(ls->get_tablet_svr()->build_tablet_iter(ls_tablet_iter_))) { - SERVER_LOG(WARN, "fail to get tablet iter", K(ret)); + } else if (OB_FAIL(ls->build_tablet_iter(ls_tablet_iter_))) { + SERVER_LOG(WARN, "fail to build tablet iter", K(ret)); + } + } + + if (OB_FAIL(ret)) { + } else if (OB_FAIL(ls_tablet_iter_.get_next_tablet(tablet_handle))) { + if (OB_ITER_END == ret) { + ls_tablet_iter_.reset(); + ret = OB_SUCCESS; + } else { + SERVER_LOG(WARN, "fail to get next tablet", K(ret)); } } else { break; diff --git a/src/storage/ls/ob_ls_tablet_service.cpp b/src/storage/ls/ob_ls_tablet_service.cpp index f11da7d0e8..b841eeea04 100644 --- a/src/storage/ls/ob_ls_tablet_service.cpp +++ b/src/storage/ls/ob_ls_tablet_service.cpp @@ -1972,7 +1972,7 @@ int ObLSTabletService::inner_table_scan( K(data_max_schema_version)); } - return ret; + return ret; } int ObLSTabletService::has_tablet( diff --git a/src/storage/tablet/ob_i_tablet_mds_interface.ipp b/src/storage/tablet/ob_i_tablet_mds_interface.ipp index f710160d6d..5065bde3da 100644 --- a/src/storage/tablet/ob_i_tablet_mds_interface.ipp +++ b/src/storage/tablet/ob_i_tablet_mds_interface.ipp @@ -199,7 +199,7 @@ inline int ObITabletMdsInterface::get_mds_data_from_tablet &aux_tablet_info_addr = get_mds_data_().aux_tablet_info_.committed_kv_; if (CLICK_FAIL(ObTabletMdsData::load_aux_tablet_info(aux_tablet_info_addr, aux_tablet_info))) { - MDS_LOG_GET(WARN, "failed to load auto inc seq"); + MDS_LOG_GET(WARN, "failed to load aux tablet info"); } else if (!aux_tablet_info.is_valid()) { ret = OB_EMPTY_RESULT; } else if (CLICK_FAIL(read_op(aux_tablet_info))) {