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

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

commit 1942bb8e3be41194cb578ddafa112a1c9c1f9aff
Author: wangbo <wan...@apache.org>
AuthorDate: Tue Mar 29 14:18:59 2022 +0800

    [Bug] Read bitmap/hll column failed for storage layer vectorization (#8560)
    
    * fix bitmap error
    
    * Update be/src/olap/rowset/segment_v2/segment_iterator.cpp
    
    Co-authored-by: Mingyu Chen <morningman....@gmail.com>
    
    Co-authored-by: Wang Bo <wangb...@meituan.com>
    Co-authored-by: Mingyu Chen <morningman....@gmail.com>
---
 be/src/olap/rowset/segment_v2/segment_iterator.cpp | 8 ++++++++
 be/src/olap/schema.cpp                             | 3 +--
 2 files changed, 9 insertions(+), 2 deletions(-)

diff --git a/be/src/olap/rowset/segment_v2/segment_iterator.cpp 
b/be/src/olap/rowset/segment_v2/segment_iterator.cpp
index da1c219..e57730a 100644
--- a/be/src/olap/rowset/segment_v2/segment_iterator.cpp
+++ b/be/src/olap/rowset/segment_v2/segment_iterator.cpp
@@ -647,6 +647,14 @@ void SegmentIterator::_vec_init_lazy_materialization() {
                 if (!_is_pred_column[cid]) {
                     _non_predicate_columns.push_back(cid);
                     is_non_predicate_column_exists = true;
+
+                    // todo(wb) make a cost-based lazy-materialization 
framework
+                    // check non-pred column type to decide whether using 
lazy-materialization
+                    FieldType type = _schema.column(cid)->type();
+                    if (_is_all_column_basic_type && (type == 
OLAP_FIELD_TYPE_HLL || type == OLAP_FIELD_TYPE_OBJECT 
+                            || type == OLAP_FIELD_TYPE_VARCHAR || type == 
OLAP_FIELD_TYPE_CHAR || type == OLAP_FIELD_TYPE_STRING)) {
+                        _is_all_column_basic_type = false;
+                    }
                 }
             }
         }
diff --git a/be/src/olap/schema.cpp b/be/src/olap/schema.cpp
index 77b31af..6b8354f 100644
--- a/be/src/olap/schema.cpp
+++ b/be/src/olap/schema.cpp
@@ -213,8 +213,7 @@ vectorized::IColumn::MutablePtr 
Schema::get_predicate_column_ptr(FieldType type)
         return doris::vectorized::PredicateColumnType<decimal12_t>::create();
 
     default:
-        DCHECK(false);
-        return nullptr;
+        LOG(FATAL) << "Unexpected type when choosing predicate column, type=" 
<< type;
     }
 }
 

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

Reply via email to