[fix](merge-on-write) return error st if check_pk_in_pre_segments failed (#19736)

This commit is contained in:
zhannngchen
2023-05-23 11:04:15 +08:00
committed by GitHub
parent 8d5269542b
commit da66a64e09
2 changed files with 9 additions and 6 deletions

View File

@ -717,8 +717,8 @@ void TaskWorkerPool::_publish_version_worker_thread_callback() {
_tasks.push_back(agent_task_req);
_worker_thread_condition_variable.notify_one();
}
LOG(INFO) << "wait for previous publish version task to be done"
<< "transaction_id: " << publish_version_req.transaction_id;
LOG_EVERY_SECOND(INFO) << "wait for previous publish version task to be done"
<< "transaction_id: " << publish_version_req.transaction_id;
break;
} else {
LOG_WARNING("failed to publish version")

View File

@ -2723,13 +2723,16 @@ Status Tablet::calc_delete_bitmap(RowsetSharedPtr rowset,
&loc);
if (st.ok()) {
delete_bitmap->add({rowset_id, loc.segment_id, 0}, loc.row_id);
++row_id;
continue;
} else if (st.is<ALREADY_EXIST>()) {
delete_bitmap->add({rowset_id, seg->id(), 0}, row_id);
++row_id;
continue;
} else if (!st.is_not_found()) {
// some unexpected error
LOG(WARNING) << "some unexpected error happen while looking up keys "
<< "in pre segments: " << st;
return st;
}
++row_id;
continue;
}
// same row in segments should be filtered
if (delete_bitmap->contains({rowset_id, seg->id(), 0}, row_id)) {