gavinchou commented on code in PR #43253: URL: https://github.com/apache/doris/pull/43253#discussion_r1834010903
########## cloud/src/meta-service/meta_service.cpp: ########## @@ -88,46 +88,52 @@ std::string get_instance_id(const std::shared_ptr<ResourceManager>& rc_mgr, std::vector<NodeInfo> nodes; std::string err = rc_mgr->get_node(cloud_unique_id, &nodes); { TEST_SYNC_POINT_CALLBACK("get_instance_id_err", &err); } + std::string instance_id; if (!err.empty()) { // cache can't find cloud_unique_id, so degraded by parse cloud_unique_id // cloud_unique_id encode: ${version}:${instance_id}:${unique_id} // check it split by ':' c - auto vec = split(cloud_unique_id, ':'); - std::stringstream ss; - for (int i = 0; i < vec.size(); ++i) { - ss << "idx " << i << "= [" << vec[i] << "] "; - } - LOG(INFO) << "degraded to get instance_id, cloud_unique_id: " << cloud_unique_id - << "after split: " << ss.str(); - if (vec.size() != 3) { - LOG(WARNING) << "cloud unique id is not degraded format, failed to check instance " - "info, cloud_unique_id=" - << cloud_unique_id << " , err=" << err; + auto [valid, id] = ResourceManager::get_instance_id_by_cloud_unique_id(cloud_unique_id); + if (!valid) { + LOG(WARNING) << "use degraded format cloud_unique_id, but cloud_unique_id not degrade " + "format, cloud_unique_id=" + << cloud_unique_id; return ""; } - // version: vec[0], instance_id: vec[1], unique_id: vec[2] - switch (std::atoi(vec[0].c_str())) { - case 1: - // just return instance id; - return vec[1]; - default: - LOG(WARNING) << "cloud unique id degraded state, but version not eq configure, " - "cloud_unique_id=" - << cloud_unique_id << ", err=" << err; + + // check instance_id valid by get fdb + if (config::enable_check_instance_id && !rc_mgr->is_instance_id_registered(id)) { + LOG(WARNING) << "use degraded format cloud_unique_id, but check instance failed"; Review Comment: should log cloud_unique_id and instance id -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: commits-unsubscr...@doris.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org --------------------------------------------------------------------- To unsubscribe, e-mail: commits-unsubscr...@doris.apache.org For additional commands, e-mail: commits-h...@doris.apache.org