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
The following commit(s) were added to refs/heads/branch-2.0 by this push:
new aec272e3308 [Fix](point query) avoid nullptr in _block_pool #33120
(#33144)
aec272e3308 is described below
commit aec272e3308c441f5f5290b080db3b7d540bbe2a
Author: lihangyu <[email protected]>
AuthorDate: Wed Apr 3 09:14:43 2024 +0800
[Fix](point query) avoid nullptr in _block_pool #33120 (#33144)
`resize` will make nullptrs in _block_pool if _block_pool.size() <
s_preallocted_blocks_num
---
be/src/service/point_query_executor.cpp | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)
diff --git a/be/src/service/point_query_executor.cpp
b/be/src/service/point_query_executor.cpp
index 01d40d13ffe..20a111b2b38 100644
--- a/be/src/service/point_query_executor.cpp
+++ b/be/src/service/point_query_executor.cpp
@@ -92,12 +92,14 @@ std::unique_ptr<vectorized::Block> Reusable::get_block() {
void Reusable::return_block(std::unique_ptr<vectorized::Block>& block) {
std::lock_guard lock(_block_mutex);
- if (_block_pool.size() > s_preallocted_blocks_num) {
+ if (block == nullptr) {
return;
}
block->clear_column_data();
_block_pool.push_back(std::move(block));
- _block_pool.resize(s_preallocted_blocks_num);
+ if (_block_pool.size() > s_preallocted_blocks_num) {
+ _block_pool.resize(s_preallocted_blocks_num);
+ }
}
int64_t Reusable::mem_size() const {
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]