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 e640b044b0994071a09157a7feb800e5b109442a
Author: zhannngchen <[email protected]>
AuthorDate: Thu Aug 3 17:11:19 2023 +0800

    [config](merge-on-write) use separate config to control primary key index 
cache (#22538)
---
 be/src/common/config.cpp          | 2 ++
 be/src/common/config.h            | 2 ++
 be/src/olap/primary_key_index.cpp | 4 ++--
 3 files changed, 6 insertions(+), 2 deletions(-)

diff --git a/be/src/common/config.cpp b/be/src/common/config.cpp
index 5770d431b2..a295b03443 100644
--- a/be/src/common/config.cpp
+++ b/be/src/common/config.cpp
@@ -308,6 +308,8 @@ DEFINE_Int32(index_page_cache_percentage, "10");
 DEFINE_Bool(disable_storage_page_cache, "true");
 // whether to disable row cache feature in storage
 DEFINE_Bool(disable_storage_row_cache, "true");
+// whether to disable pk page cache feature in storage
+DEFINE_Bool(disable_pk_storage_page_cache, "false");
 
 // Cache for mow primary key storage page size
 DEFINE_String(pk_storage_page_cache_limit, "10%");
diff --git a/be/src/common/config.h b/be/src/common/config.h
index ff317c7c80..5f6d7c6233 100644
--- a/be/src/common/config.h
+++ b/be/src/common/config.h
@@ -352,6 +352,8 @@ DECLARE_Int32(index_page_cache_percentage);
 DECLARE_Bool(disable_storage_page_cache);
 // whether to disable row cache feature in storage
 DECLARE_Bool(disable_storage_row_cache);
+// whether to disable pk page cache feature in storage
+DECLARE_Bool(disable_pk_storage_page_cache);
 
 // Cache for mow primary key storage page size, it's seperated from
 // storage_page_cache_limit
diff --git a/be/src/olap/primary_key_index.cpp 
b/be/src/olap/primary_key_index.cpp
index 7b2f1593ca..de26c4eca3 100644
--- a/be/src/olap/primary_key_index.cpp
+++ b/be/src/olap/primary_key_index.cpp
@@ -86,7 +86,7 @@ Status PrimaryKeyIndexReader::parse_index(io::FileReaderSPtr 
file_reader,
     // parse primary key index
     _index_reader.reset(new segment_v2::IndexedColumnReader(file_reader, 
meta.primary_key_index()));
     _index_reader->set_is_pk_index(true);
-    RETURN_IF_ERROR(_index_reader->load(!config::disable_storage_page_cache, 
false));
+    
RETURN_IF_ERROR(_index_reader->load(!config::disable_pk_storage_page_cache, 
false));
 
     _index_parsed = true;
     return Status::OK();
@@ -98,7 +98,7 @@ Status PrimaryKeyIndexReader::parse_bf(io::FileReaderSPtr 
file_reader,
     segment_v2::ColumnIndexMetaPB column_index_meta = 
meta.bloom_filter_index();
     segment_v2::BloomFilterIndexReader bf_index_reader(std::move(file_reader),
                                                        
&column_index_meta.bloom_filter_index());
-    RETURN_IF_ERROR(bf_index_reader.load(!config::disable_storage_page_cache, 
false));
+    
RETURN_IF_ERROR(bf_index_reader.load(!config::disable_pk_storage_page_cache, 
false));
     std::unique_ptr<segment_v2::BloomFilterIndexIterator> bf_iter;
     RETURN_IF_ERROR(bf_index_reader.new_iterator(&bf_iter));
     RETURN_IF_ERROR(bf_iter->read_bloom_filter(0, &_bf));


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to