From 90c84dd7293528a862b8b88a8b6706733fba5d27 Mon Sep 17 00:00:00 2001 From: airborne12 Date: Fri, 5 Sep 2025 18:12:10 +0800 Subject: [PATCH] Revert "[fix](inverted index) fix wrong read data for primary key (#47841)" This reverts commit e4af142e9b73e56174458e2f5f42ea15a94b9325. --- be/src/olap/rowset/segment_v2/segment_iterator.cpp | 14 +------------- .../test_pk_no_need_read_data.groovy | 13 +++++-------- 2 files changed, 6 insertions(+), 21 deletions(-) diff --git a/be/src/olap/rowset/segment_v2/segment_iterator.cpp b/be/src/olap/rowset/segment_v2/segment_iterator.cpp index 7911f41700770c..c493a4869fbcad 100644 --- a/be/src/olap/rowset/segment_v2/segment_iterator.cpp +++ b/be/src/olap/rowset/segment_v2/segment_iterator.cpp @@ -2895,19 +2895,7 @@ bool SegmentIterator::_no_need_read_key_data(ColumnId cid, vectorized::MutableCo return false; } - // seek_schema is set when get_row_ranges_by_keys, it is null when there is no primary key range - // in this case, we need to read data - if (!_seek_schema) { - return false; - } - // check if the column is in the seek_schema - if (std::none_of(_seek_schema->columns().begin(), _seek_schema->columns().end(), - [&](const Field* col) { - return (col && _opts.tablet_schema->field_index(col->unique_id()) == cid); - })) { - return false; - } - if (!_check_all_conditions_passed_inverted_index_for_column(cid, true)) { + if (!_check_all_conditions_passed_inverted_index_for_column(cid)) { return false; } diff --git a/regression-test/suites/inverted_index_p0/test_pk_no_need_read_data.groovy b/regression-test/suites/inverted_index_p0/test_pk_no_need_read_data.groovy index 976ef3623b993c..1641d0e3e16a46 100644 --- a/regression-test/suites/inverted_index_p0/test_pk_no_need_read_data.groovy +++ b/regression-test/suites/inverted_index_p0/test_pk_no_need_read_data.groovy @@ -14,7 +14,7 @@ // KIND, either express or implied. See the License for the // specific language governing permissions and limitations // under the License. -suite("test_pk_no_need_read_data", "nonConcurrent"){ +suite("test_pk_no_need_read_data", "p0"){ def table1 = "test_pk_no_need_read_data" sql "drop table if exists ${table1}" @@ -56,15 +56,12 @@ suite("test_pk_no_need_read_data", "nonConcurrent"){ sql "set enable_count_on_index_pushdown = true" sql """ set enable_common_expr_pushdown = true """ - try { - GetDebugPoint().enableDebugPointForAllBEs("segment_iterator._read_columns_by_index") - qt_select_0 "SELECT COUNT() FROM ${table1} WHERE date='2017-10-01'" - } finally { - GetDebugPoint().disableDebugPointForAllBEs("segment_iterator._read_columns_by_index") - } + qt_select_0 "SELECT COUNT() FROM ${table1} WHERE date='2017-10-01'" qt_select_1 "SELECT COUNT() FROM ${table1} WHERE year(date)='2017'" - // case2: disable count on index + + // case1: disable count on index sql "set enable_count_on_index_pushdown = false" + qt_select_2 "SELECT COUNT() FROM ${table1} WHERE date='2017-10-01'" qt_select_3 "SELECT COUNT() FROM ${table1} WHERE year(date)='2017'" } \ No newline at end of file