sollhui commented on code in PR #38474:
URL: https://github.com/apache/doris/pull/38474#discussion_r1703593780
##########
cloud/src/meta-service/meta_service_txn.cpp:
##########
@@ -644,6 +644,58 @@ void
MetaServiceImpl::get_rl_task_commit_attach(::google::protobuf::RpcControlle
}
}
+void MetaServiceImpl::reset_progress(::google::protobuf::RpcController*
controller,
+ const ResetProgressRequest* request,
+ ResetProgressResponse* response,
+ ::google::protobuf::Closure* done) {
+ RPC_PREPROCESS(reset_progress);
+ instance_id = get_instance_id(resource_mgr_, request->cloud_unique_id());
+ if (instance_id.empty()) {
+ code = MetaServiceCode::INVALID_ARGUMENT;
+ msg = "empty instance_id";
+ LOG(INFO) << msg << ", cloud_unique_id=" << request->cloud_unique_id();
+ return;
+ }
+ RPC_RATE_LIMIT(reset_progress)
+
+ std::unique_ptr<Transaction> txn;
+ TxnErrorCode err = txn_kv_->create_txn(&txn);
+ if (err != TxnErrorCode::TXN_OK) {
+ code = cast_as<ErrCategory::CREATE>(err);
+ ss << "filed to create txn, err=" << err;
+ msg = ss.str();
+ return;
+ }
+
+ if (!request->has_db_id() || !request->has_job_id()) {
+ code = MetaServiceCode::INVALID_ARGUMENT;
+ msg = "empty db_id or job_id";
+ LOG(INFO) << msg << ", cloud_unique_id=" << request->cloud_unique_id();
+ return;
+ }
+
+ int64_t db_id = request->db_id();
+ int64_t job_id = request->job_id();
+ std::string rl_progress_key;
+ std::string rl_progress_val;
+ RLJobProgressKeyInfo rl_progress_key_info {instance_id, db_id, job_id};
+ rl_job_progress_key_info(rl_progress_key_info, &rl_progress_key);
+ txn->remove(rl_progress_key);
+ err = txn->commit();
+ if (err == TxnErrorCode::TXN_KEY_NOT_FOUND) {
Review Comment:
Handle in
```
if (response.getStatus().getCode() ==
Cloud.MetaServiceCode.ROUTINE_LOAD_PROGRESS_NOT_FOUND) {
LOG.warn("not found routine load progress, response:
{}", response);
return;
}
```
--
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: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]