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

eldenmoon pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/doris.git


The following commit(s) were added to refs/heads/master by this push:
     new 2965b9b3b4 fix update delete bitmap when rowset is blank (#24075)
2965b9b3b4 is described below

commit 2965b9b3b483642b9e83d768551cb404b3bd614e
Author: Chenyang Sun <csun5...@gmail.com>
AuthorDate: Fri Sep 8 12:43:42 2023 +0800

    fix update delete bitmap when rowset is blank (#24075)
    
    If the rowset (derived from a clone) does not have a segment, there is no 
need to update the delete bitmap.
---
 be/src/olap/tablet.cpp | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/be/src/olap/tablet.cpp b/be/src/olap/tablet.cpp
index 6af6b6aff1..31aa25f9a5 100644
--- a/be/src/olap/tablet.cpp
+++ b/be/src/olap/tablet.cpp
@@ -3239,6 +3239,12 @@ Status Tablet::update_delete_bitmap_without_lock(const 
RowsetSharedPtr& rowset)
     std::vector<segment_v2::SegmentSharedPtr> segments;
     _load_rowset_segments(rowset, &segments);
 
+    // If this rowset does not have a segment, there is no need for an update.
+    if (segments.empty()) {
+        LOG(INFO) << "[Schema Change or Clone] skip to construct delete bitmap 
tablet: "
+                  << tablet_id() << " cur max_version: " << cur_version;
+        return Status::OK();
+    }
     RowsetIdUnorderedSet cur_rowset_ids = all_rs_id(cur_version - 1);
     DeleteBitmapPtr delete_bitmap = 
std::make_shared<DeleteBitmap>(tablet_id());
     RETURN_IF_ERROR(calc_delete_bitmap_between_segments(rowset, segments, 
delete_bitmap));


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

Reply via email to