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/07/12 08:54:39 UTC
[doris] branch master updated: fix use released memory bugs (#10777)
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/doris.git
The following commit(s) were added to refs/heads/master by this push:
new 5f99a95816 fix use released memory bugs (#10777)
5f99a95816 is described below
commit 5f99a958161cf060a69a18f7e3749e6aa6483954
Author: camby <10...@qq.com>
AuthorDate: Tue Jul 12 16:54:32 2022 +0800
fix use released memory bugs (#10777)
Co-authored-by: cambyzju <zh...@baidu.com>
---
be/src/vec/data_types/data_type_nullable.cpp | 8 ++++----
be/src/vec/data_types/data_type_string.cpp | 10 ++++------
2 files changed, 8 insertions(+), 10 deletions(-)
diff --git a/be/src/vec/data_types/data_type_nullable.cpp b/be/src/vec/data_types/data_type_nullable.cpp
index d8a3525bc3..41a1abc0ce 100644
--- a/be/src/vec/data_types/data_type_nullable.cpp
+++ b/be/src/vec/data_types/data_type_nullable.cpp
@@ -43,8 +43,8 @@ bool DataTypeNullable::only_null() const {
}
std::string DataTypeNullable::to_string(const IColumn& column, size_t row_num) const {
- const ColumnNullable& col =
- assert_cast<const ColumnNullable&>(*column.convert_to_full_column_if_const().get());
+ auto ptr = column.convert_to_full_column_if_const();
+ const ColumnNullable& col = assert_cast<const ColumnNullable&>(*ptr.get());
if (col.is_null_at(row_num)) {
return "NULL";
@@ -55,8 +55,8 @@ std::string DataTypeNullable::to_string(const IColumn& column, size_t row_num) c
void DataTypeNullable::to_string(const IColumn& column, size_t row_num,
BufferWritable& ostr) const {
- const ColumnNullable& col =
- assert_cast<const ColumnNullable&>(*column.convert_to_full_column_if_const().get());
+ auto ptr = column.convert_to_full_column_if_const();
+ const ColumnNullable& col = assert_cast<const ColumnNullable&>(*ptr.get());
if (col.is_null_at(row_num)) {
ostr.write("NULL", 4);
diff --git a/be/src/vec/data_types/data_type_string.cpp b/be/src/vec/data_types/data_type_string.cpp
index b7bf2fdc2e..b319ae3e93 100644
--- a/be/src/vec/data_types/data_type_string.cpp
+++ b/be/src/vec/data_types/data_type_string.cpp
@@ -52,17 +52,15 @@ static inline void read(IColumn& column, Reader&& reader) {
}
std::string DataTypeString::to_string(const IColumn& column, size_t row_num) const {
- const StringRef& s =
- assert_cast<const ColumnString&>(*column.convert_to_full_column_if_const().get())
- .get_data_at(row_num);
+ auto ptr = column.convert_to_full_column_if_const();
+ const StringRef& s = assert_cast<const ColumnString&>(*ptr.get()).get_data_at(row_num);
return s.to_string();
}
void DataTypeString::to_string(const class doris::vectorized::IColumn& column, size_t row_num,
class doris::vectorized::BufferWritable& ostr) const {
- const StringRef& s =
- assert_cast<const ColumnString&>(*column.convert_to_full_column_if_const().get())
- .get_data_at(row_num);
+ auto ptr = column.convert_to_full_column_if_const();
+ const StringRef& s = assert_cast<const ColumnString&>(*ptr.get()).get_data_at(row_num);
ostr.write(s.data, s.size);
}
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org
For additional commands, e-mail: commits-help@doris.apache.org