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

dataroaring pushed a commit to branch branch-3.0
in repository https://gitbox.apache.org/repos/asf/doris.git


The following commit(s) were added to refs/heads/branch-3.0 by this push:
     new 34b5c99c13f [cherry-pick](branch-3.0)Change spin lock to mutex  
(#44898)
34b5c99c13f is described below

commit 34b5c99c13fae6b8cd7c22f731350243ed1bace3
Author: kkop <2449402...@qq.com>
AuthorDate: Tue Dec 3 21:59:08 2024 +0800

    [cherry-pick](branch-3.0)Change spin lock to mutex  (#44898)
    
    Related PR: #https://github.com/apache/doris/pull/41384
---
 be/src/runtime/load_channel.cpp | 6 +++---
 be/src/runtime/load_channel.h   | 2 +-
 2 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/be/src/runtime/load_channel.cpp b/be/src/runtime/load_channel.cpp
index 1ac7753b197..9369c0c833c 100644
--- a/be/src/runtime/load_channel.cpp
+++ b/be/src/runtime/load_channel.cpp
@@ -135,7 +135,7 @@ Status LoadChannel::open(const PTabletWriterOpenRequest& 
params) {
                                                            _is_high_priority, 
_self_profile);
             }
             {
-                std::lock_guard<SpinLock> l(_tablets_channels_lock);
+                std::lock_guard<std::mutex> l(_tablets_channels_lock);
                 _tablets_channels.insert({index_id, channel});
             }
         }
@@ -237,7 +237,7 @@ Status LoadChannel::_handle_eos(BaseTabletsChannel* channel,
     if (finished) {
         std::lock_guard<std::mutex> l(_lock);
         {
-            std::lock_guard<SpinLock> l(_tablets_channels_lock);
+            std::lock_guard<std::mutex> l(_tablets_channels_lock);
             _tablets_channels_rows.insert(std::make_pair(
                     index_id,
                     std::make_pair(channel->total_received_rows(), 
channel->num_rows_filtered())));
@@ -263,7 +263,7 @@ void 
LoadChannel::_report_profile(PTabletWriterAddBlockResult* response) {
     _self_profile->set_timestamp(_last_updated_time);
 
     {
-        std::lock_guard<SpinLock> l(_tablets_channels_lock);
+        std::lock_guard<std::mutex> l(_tablets_channels_lock);
         for (auto& it : _tablets_channels) {
             it.second->refresh_profile();
         }
diff --git a/be/src/runtime/load_channel.h b/be/src/runtime/load_channel.h
index 6c150ed74d9..36a8f363ba9 100644
--- a/be/src/runtime/load_channel.h
+++ b/be/src/runtime/load_channel.h
@@ -104,7 +104,7 @@ private:
     std::unordered_map<int64_t, std::shared_ptr<BaseTabletsChannel>> 
_tablets_channels;
     // index id -> (received rows, filtered rows)
     std::unordered_map<int64_t, std::pair<size_t, size_t>> 
_tablets_channels_rows;
-    SpinLock _tablets_channels_lock;
+    std::mutex _tablets_channels_lock;
     // This is to save finished channels id, to handle the retry request.
     std::unordered_set<int64_t> _finished_channel_ids;
     // set to true if at least one tablets channel has been opened


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscr...@doris.apache.org
For additional commands, e-mail: commits-h...@doris.apache.org

Reply via email to