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

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


The following commit(s) were added to refs/heads/master by this push:
     new d8cde8c  (#6454) Remove useless code for Segment V2 (#6455)
d8cde8c is described below

commit d8cde8c044162f06bb2d6804359963ab53ca6478
Author: wangbo <506340...@qq.com>
AuthorDate: Thu Sep 2 09:59:21 2021 +0800

    (#6454) Remove useless code for Segment V2 (#6455)
---
 be/src/olap/generic_iterators.cpp                  |  6 ------
 be/src/olap/rowset/segment_v2/column_reader.cpp    | 18 +++---------------
 be/src/olap/rowset/segment_v2/column_reader.h      | 11 ++---------
 be/src/olap/rowset/segment_v2/segment_iterator.cpp |  1 -
 4 files changed, 5 insertions(+), 31 deletions(-)

diff --git a/be/src/olap/generic_iterators.cpp 
b/be/src/olap/generic_iterators.cpp
index 8fd8e68..09b5f31 100644
--- a/be/src/olap/generic_iterators.cpp
+++ b/be/src/olap/generic_iterators.cpp
@@ -143,8 +143,6 @@ public:
     // will return a valid row
     bool valid() const { return _valid; }
 
-    int is_partial_delete() const { return _block.delete_state() == 
DEL_PARTIAL_SATISFIED; }
-
     uint64_t data_id() const { return _iter->data_id(); }
 
 private:
@@ -276,10 +274,6 @@ Status MergeIterator::next_batch(RowBlockV2* block) {
         // copy current row to block
         copy_row(&dst_row, ctx->current_row(), block->pool());
 
-        // TODO(hkp): refactor conditions and filter rows here with delete 
conditions
-        if (ctx->is_partial_delete()) {
-            block->set_delete_state(DEL_PARTIAL_SATISFIED);
-        }
         RETURN_IF_ERROR(ctx->advance());
         if (ctx->valid()) {
             _merge_heap->push(ctx);
diff --git a/be/src/olap/rowset/segment_v2/column_reader.cpp 
b/be/src/olap/rowset/segment_v2/column_reader.cpp
index bbfba19..4c26e88 100644
--- a/be/src/olap/rowset/segment_v2/column_reader.cpp
+++ b/be/src/olap/rowset/segment_v2/column_reader.cpp
@@ -155,13 +155,11 @@ Status ColumnReader::read_page(const 
ColumnIteratorOptions& iter_opts, const Pag
 }
 
 Status ColumnReader::get_row_ranges_by_zone_map(
-        CondColumn* cond_column, CondColumn* delete_condition,
-        std::unordered_set<uint32_t>* delete_partial_filtered_pages, 
RowRanges* row_ranges) {
+        CondColumn* cond_column, CondColumn* delete_condition, RowRanges* 
row_ranges) {
     RETURN_IF_ERROR(_ensure_index_loaded());
 
     std::vector<uint32_t> page_indexes;
-    RETURN_IF_ERROR(_get_filtered_pages(cond_column, delete_condition,
-                                        delete_partial_filtered_pages, 
&page_indexes));
+    RETURN_IF_ERROR(_get_filtered_pages(cond_column, delete_condition, 
&page_indexes));
     RETURN_IF_ERROR(_calculate_row_ranges(page_indexes, row_ranges));
     return Status::OK();
 }
@@ -215,7 +213,6 @@ bool ColumnReader::_zone_map_match_condition(const 
ZoneMapPB& zone_map,
 
 Status ColumnReader::_get_filtered_pages(
         CondColumn* cond_column, CondColumn* delete_condition,
-        std::unordered_set<uint32_t>* delete_partial_filtered_pages,
         std::vector<uint32_t>* page_indexes) {
     FieldType type = _type_info->type();
     const std::vector<ZoneMapPB>& zone_maps = 
_zone_map_index->page_zone_maps();
@@ -234,8 +231,6 @@ Status ColumnReader::_get_filtered_pages(
                     int state = delete_condition->del_eval({min_value.get(), 
max_value.get()});
                     if (state == DEL_SATISFIED) {
                         should_read = false;
-                    } else if (state == DEL_PARTIAL_SATISFIED) {
-                        delete_partial_filtered_pages->insert(i);
                     }
                 }
                 if (should_read) {
@@ -530,13 +525,6 @@ Status FileColumnIterator::next_batch(size_t* n, 
ColumnBlockView* dst, bool* has
             }
         }
 
-        auto iter = _delete_partial_satisfied_pages.find(_page->page_index);
-        bool is_partial = iter != _delete_partial_satisfied_pages.end();
-        if (is_partial) {
-            dst->column_block()->set_delete_state(DEL_PARTIAL_SATISFIED);
-        } else {
-            dst->column_block()->set_delete_state(DEL_NOT_SATISFIED);
-        }
         // number of rows to be read from this page
         size_t nrows_in_page = std::min(remaining, _page->remaining());
         size_t nrows_to_read = nrows_in_page;
@@ -643,7 +631,7 @@ Status 
FileColumnIterator::get_row_ranges_by_zone_map(CondColumn* cond_column,
                                                       RowRanges* row_ranges) {
     if (_reader->has_zone_map()) {
         RETURN_IF_ERROR(_reader->get_row_ranges_by_zone_map(
-                cond_column, delete_condition, 
&_delete_partial_satisfied_pages, row_ranges));
+                cond_column, delete_condition, row_ranges));
     }
     return Status::OK();
 }
diff --git a/be/src/olap/rowset/segment_v2/column_reader.h 
b/be/src/olap/rowset/segment_v2/column_reader.h
index 6fa1958..0e546f5 100644
--- a/be/src/olap/rowset/segment_v2/column_reader.h
+++ b/be/src/olap/rowset/segment_v2/column_reader.h
@@ -123,9 +123,7 @@ public:
     // get row ranges with zone map
     // - cond_column is user's query predicate
     // - delete_condition is a delete predicate of one version
-    Status get_row_ranges_by_zone_map(CondColumn* cond_column, CondColumn* 
delete_condition,
-                                      std::unordered_set<uint32_t>* 
delete_partial_filtered_pages,
-                                      RowRanges* row_ranges);
+    Status get_row_ranges_by_zone_map(CondColumn* cond_column, CondColumn* 
delete_condition, RowRanges* row_ranges);
 
     // get row ranges with bloom filter index
     Status get_row_ranges_by_bloom_filter(CondColumn* cond_column, RowRanges* 
row_ranges);
@@ -161,9 +159,7 @@ private:
     void _parse_zone_map(const ZoneMapPB& zone_map, WrapperField* 
min_value_container,
                          WrapperField* max_value_container) const;
 
-    Status _get_filtered_pages(CondColumn* cond_column, CondColumn* 
delete_conditions,
-                               std::unordered_set<uint32_t>* 
delete_partial_filtered_pages,
-                               std::vector<uint32_t>* page_indexes);
+    Status _get_filtered_pages(CondColumn* cond_column, CondColumn* 
delete_conditions, std::vector<uint32_t>* page_indexes);
 
     Status _calculate_row_ranges(const std::vector<uint32_t>& page_indexes, 
RowRanges* row_ranges);
 
@@ -312,9 +308,6 @@ private:
 
     // current value ordinal
     ordinal_t _current_ordinal = 0;
-
-    // page indexes those are DEL_PARTIAL_SATISFIED
-    std::unordered_set<uint32_t> _delete_partial_satisfied_pages;
 };
 
 class ArrayFileColumnIterator final : public ColumnIterator {
diff --git a/be/src/olap/rowset/segment_v2/segment_iterator.cpp 
b/be/src/olap/rowset/segment_v2/segment_iterator.cpp
index 5e80270..9d33ec3 100644
--- a/be/src/olap/rowset/segment_v2/segment_iterator.cpp
+++ b/be/src/olap/rowset/segment_v2/segment_iterator.cpp
@@ -476,7 +476,6 @@ Status SegmentIterator::_read_columns(const 
std::vector<ColumnId>& column_ids, R
         ColumnBlockView dst(&column_block, row_offset);
         size_t rows_read = nrows;
         RETURN_IF_ERROR(_column_iterators[cid]->next_batch(&rows_read, &dst));
-        block->set_delete_state(column_block.delete_state());
         DCHECK_EQ(nrows, rows_read);
     }
     return Status::OK();

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

Reply via email to