You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@doris.apache.org by yi...@apache.org on 2022/05/31 11:20:27 UTC

[incubator-doris] branch master updated: [bugfix]fix TableFunctionNode memory leak (#9853)

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

yiguolei 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 d34d631519 [bugfix]fix TableFunctionNode memory leak (#9853)
d34d631519 is described below

commit d34d631519bc49552a1ce5591bc7b32d2e2bad80
Author: Pxl <px...@qq.com>
AuthorDate: Tue May 31 19:20:22 2022 +0800

    [bugfix]fix TableFunctionNode memory leak (#9853)
---
 be/src/exec/table_function_node.cpp | 1 +
 be/src/util/block_compression.cpp   | 4 ++--
 be/src/vec/exec/varrow_scanner.h    | 2 +-
 3 files changed, 4 insertions(+), 3 deletions(-)

diff --git a/be/src/exec/table_function_node.cpp b/be/src/exec/table_function_node.cpp
index 50351438c3..311ef9007c 100644
--- a/be/src/exec/table_function_node.cpp
+++ b/be/src/exec/table_function_node.cpp
@@ -377,6 +377,7 @@ Status TableFunctionNode::close(RuntimeState* state) {
     }
     RETURN_IF_ERROR(exec_debug_action(TExecNodePhase::CLOSE));
     Expr::close(_fn_ctxs, state);
+    vectorized::VExpr::close(_vfn_ctxs, state);
 
     if (_num_rows_filtered_counter != nullptr) {
         COUNTER_SET(_num_rows_filtered_counter, static_cast<int64_t>(_num_rows_filtered));
diff --git a/be/src/util/block_compression.cpp b/be/src/util/block_compression.cpp
index 51f485f348..01c3734948 100644
--- a/be/src/util/block_compression.cpp
+++ b/be/src/util/block_compression.cpp
@@ -418,7 +418,7 @@ public:
 
     // follow ZSTD official example
     //  https://github.com/facebook/zstd/blob/dev/examples/streaming_compression.c
-    Status compress(const std::vector<Slice>& inputs, Slice* output) const {
+    Status compress(const std::vector<Slice>& inputs, Slice* output) const override {
         if (!ctx_c) return Status::InvalidArgument("compression context NOT initialized");
 
         // reset ctx to start new compress session
@@ -479,7 +479,7 @@ public:
 
     // follow ZSTD official example
     //  https://github.com/facebook/zstd/blob/dev/examples/streaming_decompression.c
-    Status decompress(const Slice& input, Slice* output) const {
+    Status decompress(const Slice& input, Slice* output) const override {
         if (!ctx_d) return Status::InvalidArgument("decompression context NOT initialized");
 
         // reset ctx to start a new decompress session
diff --git a/be/src/vec/exec/varrow_scanner.h b/be/src/vec/exec/varrow_scanner.h
index c3740e0d3e..176ddb58f2 100644
--- a/be/src/vec/exec/varrow_scanner.h
+++ b/be/src/vec/exec/varrow_scanner.h
@@ -67,7 +67,7 @@ private:
     Status _open_next_reader();
     Status _next_arrow_batch();
     Status _init_arrow_batch_if_necessary();
-    Status _init_src_block();
+    Status _init_src_block() override;
     Status _append_batch_to_src_block(Block* block);
     Status _cast_src_block(Block* block);
 


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