This is an automated email from the ASF dual-hosted git repository. kxiao pushed a commit to branch branch-2.0 in repository https://gitbox.apache.org/repos/asf/doris.git
commit 8f363e6e785dbadcf0c21ebe6cc18c3ef84bc674 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 494c44ac20..09a41f79d2 100644 --- a/be/src/olap/tablet.cpp +++ b/be/src/olap/tablet.cpp @@ -3238,6 +3238,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