You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tsfile.apache.org by co...@apache.org on 2026/04/01 10:26:45 UTC
(tsfile) 01/02: import.
This is an automated email from the ASF dual-hosted git repository.
colinlee pushed a commit to branch fix/tree-query-and-rle-decoder
in repository https://gitbox.apache.org/repos/asf/tsfile.git
commit a965ceda43903d34f4944f097a33b0181faa5677
Author: ColinLee <sh...@163.com>
AuthorDate: Wed Apr 1 18:25:54 2026 +0800
import.
---
cpp/src/common/device_id.cc | 5 ++---
cpp/src/encoding/int32_rle_decoder.h | 2 +-
cpp/src/file/tsfile_io_reader.cc | 9 +++------
3 files changed, 6 insertions(+), 10 deletions(-)
diff --git a/cpp/src/common/device_id.cc b/cpp/src/common/device_id.cc
index 02cd3251..31ca8842 100644
--- a/cpp/src/common/device_id.cc
+++ b/cpp/src/common/device_id.cc
@@ -58,7 +58,7 @@ bool IDeviceIDComparator::operator()(
// StringArrayDeviceID implementation
StringArrayDeviceID::StringArrayDeviceID(
const std::vector<std::string>& segments)
- : segments_(formalize(segments)) {}
+ : segments_(formalize(split_device_id_string(segments))) {}
StringArrayDeviceID::StringArrayDeviceID(const std::string& device_id_string) {
auto segments = split_device_id_string(device_id_string);
@@ -209,11 +209,10 @@ std::vector<std::string> StringArrayDeviceID::split_device_id_string(
const std::string& device_id_string) {
#ifdef ENABLE_ANTLR4
auto splits = storage::PathNodesGenerator::invokeParser(device_id_string);
- return split_device_id_string(splits);
#else
auto splits = split_string(device_id_string, '.');
- return split_device_id_string(splits);
#endif
+ return split_device_id_string(splits);
}
std::vector<std::string> StringArrayDeviceID::split_device_id_string(
diff --git a/cpp/src/encoding/int32_rle_decoder.h b/cpp/src/encoding/int32_rle_decoder.h
index aee9048a..402efa87 100644
--- a/cpp/src/encoding/int32_rle_decoder.h
+++ b/cpp/src/encoding/int32_rle_decoder.h
@@ -237,7 +237,7 @@ class Int32RleDecoder : public Decoder {
is_length_and_bitwidth_readed_ = false;
current_count_ = 0;
if (current_buffer_) {
- delete[] current_buffer_;
+ common::mem_free(current_buffer_);
current_buffer_ = nullptr;
}
if (packer_) {
diff --git a/cpp/src/file/tsfile_io_reader.cc b/cpp/src/file/tsfile_io_reader.cc
index 69e12e45..6917fa31 100644
--- a/cpp/src/file/tsfile_io_reader.cc
+++ b/cpp/src/file/tsfile_io_reader.cc
@@ -298,17 +298,14 @@ int TsFileIOReader::load_device_index_entry(
if (device_id_comparable == nullptr) {
return E_INVALID_DATA_POINT;
}
- std::string table_name = device_id_comparable->device_id_->get_table_name();
+ auto table_name = device_id_comparable->device_id_->get_table_name();
auto it = tsfile_meta_.table_metadata_index_node_map_.find(table_name);
- if (it == tsfile_meta_.table_metadata_index_node_map_.end()) {
+ if (it == tsfile_meta_.table_metadata_index_node_map_.end() ||
+ it->second == nullptr) {
return E_DEVICE_NOT_EXIST;
}
auto index_node = it->second;
- if (index_node == nullptr) {
- return E_DEVICE_NOT_EXIST;
- }
if (index_node->node_type_ == LEAF_DEVICE) {
- // FIXME
ret = index_node->binary_search_children(
device_name, true, device_index_entry, end_offset);
} else {