This is an automated email from the ASF dual-hosted git repository.

morningman pushed a commit to branch branch-1.2-lts
in repository https://gitbox.apache.org/repos/asf/doris.git

commit f935768d988e77f521f4c17a5553a59e93a18260
Author: zhannngchen <[email protected]>
AuthorDate: Tue May 23 11:04:15 2023 +0800

    [fix](merge-on-write) return error st if check_pk_in_pre_segments failed 
(#19736)
---
 be/src/agent/task_worker_pool.cpp |  4 ++--
 be/src/olap/tablet.cpp            | 11 +++++++----
 2 files changed, 9 insertions(+), 6 deletions(-)

diff --git a/be/src/agent/task_worker_pool.cpp 
b/be/src/agent/task_worker_pool.cpp
index 133a3345a5..bdccdaf7e5 100644
--- a/be/src/agent/task_worker_pool.cpp
+++ b/be/src/agent/task_worker_pool.cpp
@@ -700,8 +700,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")
diff --git a/be/src/olap/tablet.cpp b/be/src/olap/tablet.cpp
index 20e6c1fd5d..8b42a18788 100644
--- a/be/src/olap/tablet.cpp
+++ b/be/src/olap/tablet.cpp
@@ -2099,13 +2099,16 @@ Status Tablet::calc_delete_bitmap(RowsetId rowset_id,
                                                         &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;
                 }
 
                 if (specified_rowset_ids != nullptr && 
!specified_rowset_ids->empty()) {


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to