This is an automated email from the ASF dual-hosted git repository. colinlee pushed a commit to branch support_release_for_win in repository https://gitbox.apache.org/repos/asf/tsfile.git
commit bfa95c8e32393f6dd4a0141768c67d02c3d52ed6 Author: ColinLee <[email protected]> AuthorDate: Mon Mar 9 13:28:10 2026 +0800 fix some err. --- cpp/1761643915818-1-0-0.tsfile | Bin 0 -> 175694 bytes cpp/CMakeLists.txt | 4 + cpp/src/common/path.h | 10 +- .../reader/tree_view/tsfile_reader_tree_test.cc | 54 ++++++ cpp/third_party/zlib-1.3.1/treebuild.xml | 188 ++++++++++----------- .../zlib-1.3.1/zlib-1.3.1/treebuild.xml | 188 ++++++++++----------- python/tests/test_dataframe.py | 5 + 7 files changed, 254 insertions(+), 195 deletions(-) diff --git a/cpp/1761643915818-1-0-0.tsfile b/cpp/1761643915818-1-0-0.tsfile new file mode 100644 index 000000000..1c0c26495 Binary files /dev/null and b/cpp/1761643915818-1-0-0.tsfile differ diff --git a/cpp/CMakeLists.txt b/cpp/CMakeLists.txt index c85150d8f..45e630101 100755 --- a/cpp/CMakeLists.txt +++ b/cpp/CMakeLists.txt @@ -143,6 +143,10 @@ if (ENABLE_ZLIB) add_definitions(-DENABLE_GZIP) endif() +if (ENABLE_ANTLR4) + add_definitions(-DENABLE_ANTLR4) +endif() + # All libs will be stored here, including libtsfile, compress-encoding lib. set(LIBRARY_OUTPUT_PATH ${PROJECT_BINARY_DIR}/lib) diff --git a/cpp/src/common/path.h b/cpp/src/common/path.h index 55abf810d..23b37c4be 100644 --- a/cpp/src/common/path.h +++ b/cpp/src/common/path.h @@ -57,9 +57,13 @@ struct Path { IDeviceID::split_string(path_sc, '.'); #endif if (nodes.size() > 1) { - device_id_ = std::make_shared<StringArrayDeviceID>( - std::vector<std::string>(nodes.begin(), - nodes.end() - 1)); + std::string device_str; + for (size_t j = 0; j + 1 < nodes.size(); ++j) { + if (j > 0) device_str += "."; + device_str += nodes[j]; + } + device_id_ = + std::make_shared<StringArrayDeviceID>(device_str); measurement_ = nodes[nodes.size() - 1]; full_path_ = device_id_->get_device_name() + "." + measurement_; diff --git a/cpp/test/reader/tree_view/tsfile_reader_tree_test.cc b/cpp/test/reader/tree_view/tsfile_reader_tree_test.cc index ffcaa20fa..84b994dfc 100644 --- a/cpp/test/reader/tree_view/tsfile_reader_tree_test.cc +++ b/cpp/test/reader/tree_view/tsfile_reader_tree_test.cc @@ -410,3 +410,57 @@ TEST_F(TsFileTreeReaderTest, ExtendedRowsAndColumnsTest) { delete measurement; } } + +TEST_F(TsFileTreeReaderTest, ExtendedRowsAndColumnsTest1) { + TsFileTreeReader reader; + reader.open("/Users/colin/dev/tsfile/cpp/1761643915818-1-0-0.tsfile"); + auto read_device_ids = reader.get_all_device_ids(); + ResultSet* result; + int ret = + reader.query({"root.sensors.TH"}, {"t", "h"}, 0, INT64_MAX, result); + ASSERT_EQ(ret, E_OK); + auto iter = result->iterator(); + int row_count = 0; + + while (iter.hasNext()) { + RowRecord* read_record = iter.next(); + row_count++; + + // device_id1 + for (size_t i = 0; i < 2; ++i) { + Field* field = read_record->get_field(i + 1); + ASSERT_NE(field, nullptr); + + int64_t timestamp = read_record->get_timestamp(); + int row_index = timestamp / 1000; + + switch (field->type_) { + case INT64: { + EXPECT_EQ(field->get_value<int64_t>(), + static_cast<int64_t>(row_index + i)); + break; + } + case DOUBLE: { + EXPECT_NEAR(field->get_value<double>(), row_index * 1.5 + + i, + 0.001); + break; + } + case FLOAT: { + EXPECT_NEAR(field->get_value<float>(), row_index * 0.8f + + i, + 0.001f); + break; + } + case INT32: { + EXPECT_EQ(field->get_value<int32_t>(), + static_cast<int32_t>(row_index * 2 + i)); + break; + } + default: + break; + } + } + } + +} diff --git a/cpp/third_party/zlib-1.3.1/treebuild.xml b/cpp/third_party/zlib-1.3.1/treebuild.xml index 930b00be4..8e030572a 100644 --- a/cpp/third_party/zlib-1.3.1/treebuild.xml +++ b/cpp/third_party/zlib-1.3.1/treebuild.xml @@ -1,103 +1,99 @@ -<?xml version="1.0" ?> +<?xml version="1.0" encoding="UTF-8"?> <package name="zlib" version="1.3.1"> <library name="zlib" dlversion="1.3.1" dlname="z"> - <property name="description"> zip compression library </property> - <property name="include-target-dir" value="$(@PACKAGE/install-includedir)" /> - - <!-- fixme: not implemented yet --> - <property name="compiler/c/inline" value="yes" /> - - <include-file name="zlib.h" scope="public" mode="644" /> - <include-file name="zconf.h" scope="public" mode="644" /> - - <source name="adler32.c"> - <depend name="zlib.h" /> - <depend name="zconf.h" /> - </source> - <source name="compress.c"> - <depend name="zlib.h" /> - <depend name="zconf.h" /> - </source> - <source name="crc32.c"> - <depend name="zlib.h" /> - <depend name="zconf.h" /> - <depend name="crc32.h" /> - </source> - <source name="gzclose.c"> - <depend name="zlib.h" /> - <depend name="zconf.h" /> - <depend name="gzguts.h" /> - </source> - <source name="gzlib.c"> - <depend name="zlib.h" /> - <depend name="zconf.h" /> - <depend name="gzguts.h" /> - </source> - <source name="gzread.c"> - <depend name="zlib.h" /> - <depend name="zconf.h" /> - <depend name="gzguts.h" /> - </source> - <source name="gzwrite.c"> - <depend name="zlib.h" /> - <depend name="zconf.h" /> - <depend name="gzguts.h" /> - </source> - <source name="uncompr.c"> - <depend name="zlib.h" /> - <depend name="zconf.h" /> - </source> - <source name="deflate.c"> - <depend name="zlib.h" /> - <depend name="zconf.h" /> - <depend name="zutil.h" /> - <depend name="deflate.h" /> - </source> - <source name="trees.c"> - <depend name="zlib.h" /> - <depend name="zconf.h" /> - <depend name="zutil.h" /> - <depend name="deflate.h" /> - <depend name="trees.h" /> - </source> - <source name="zutil.c"> - <depend name="zlib.h" /> - <depend name="zconf.h" /> - <depend name="zutil.h" /> - </source> - <source name="inflate.c"> - <depend name="zlib.h" /> - <depend name="zconf.h" /> - <depend name="zutil.h" /> - <depend name="inftrees.h" /> - <depend name="inflate.h" /> - <depend name="inffast.h" /> - </source> - <source name="infback.c"> - <depend name="zlib.h" /> - <depend name="zconf.h" /> - <depend name="zutil.h" /> - <depend name="inftrees.h" /> - <depend name="inflate.h" /> - <depend name="inffast.h" /> - </source> - <source name="inftrees.c"> - <depend name="zlib.h" /> - <depend name="zconf.h" /> - <depend name="zutil.h" /> - <depend name="inftrees.h" /> - </source> - <source name="inffast.c"> - <depend name="zlib.h" /> - <depend name="zconf.h" /> - <depend name="zutil.h" /> - <depend name="inftrees.h" /> - <depend name="inflate.h" /> - <depend name="inffast.h" /> - </source> + <property name="description">zip compression library</property> + <property name="include-target-dir" value="$(@PACKAGE/install-includedir)"/> + <!-- fixme: not implemented yet --> + <property name="compiler/c/inline" value="yes"/> + <include-file name="zlib.h" scope="public" mode="644"/> + <include-file name="zconf.h" scope="public" mode="644"/> + <source name="adler32.c"> + <depend name="zlib.h"/> + <depend name="zconf.h"/> + </source> + <source name="compress.c"> + <depend name="zlib.h"/> + <depend name="zconf.h"/> + </source> + <source name="crc32.c"> + <depend name="zlib.h"/> + <depend name="zconf.h"/> + <depend name="crc32.h"/> + </source> + <source name="gzclose.c"> + <depend name="zlib.h"/> + <depend name="zconf.h"/> + <depend name="gzguts.h"/> + </source> + <source name="gzlib.c"> + <depend name="zlib.h"/> + <depend name="zconf.h"/> + <depend name="gzguts.h"/> + </source> + <source name="gzread.c"> + <depend name="zlib.h"/> + <depend name="zconf.h"/> + <depend name="gzguts.h"/> + </source> + <source name="gzwrite.c"> + <depend name="zlib.h"/> + <depend name="zconf.h"/> + <depend name="gzguts.h"/> + </source> + <source name="uncompr.c"> + <depend name="zlib.h"/> + <depend name="zconf.h"/> + </source> + <source name="deflate.c"> + <depend name="zlib.h"/> + <depend name="zconf.h"/> + <depend name="zutil.h"/> + <depend name="deflate.h"/> + </source> + <source name="trees.c"> + <depend name="zlib.h"/> + <depend name="zconf.h"/> + <depend name="zutil.h"/> + <depend name="deflate.h"/> + <depend name="trees.h"/> + </source> + <source name="zutil.c"> + <depend name="zlib.h"/> + <depend name="zconf.h"/> + <depend name="zutil.h"/> + </source> + <source name="inflate.c"> + <depend name="zlib.h"/> + <depend name="zconf.h"/> + <depend name="zutil.h"/> + <depend name="inftrees.h"/> + <depend name="inflate.h"/> + <depend name="inffast.h"/> + </source> + <source name="infback.c"> + <depend name="zlib.h"/> + <depend name="zconf.h"/> + <depend name="zutil.h"/> + <depend name="inftrees.h"/> + <depend name="inflate.h"/> + <depend name="inffast.h"/> + </source> + <source name="inftrees.c"> + <depend name="zlib.h"/> + <depend name="zconf.h"/> + <depend name="zutil.h"/> + <depend name="inftrees.h"/> + </source> + <source name="inffast.c"> + <depend name="zlib.h"/> + <depend name="zconf.h"/> + <depend name="zutil.h"/> + <depend name="inftrees.h"/> + <depend name="inflate.h"/> + <depend name="inffast.h"/> + </source> </library> </package> - <!-- CFLAGS=-O #CFLAGS=-O -DMAX_WBITS=14 -DMAX_MEM_LEVEL=7 diff --git a/cpp/third_party/zlib-1.3.1/zlib-1.3.1/treebuild.xml b/cpp/third_party/zlib-1.3.1/zlib-1.3.1/treebuild.xml index 930b00be4..8e030572a 100644 --- a/cpp/third_party/zlib-1.3.1/zlib-1.3.1/treebuild.xml +++ b/cpp/third_party/zlib-1.3.1/zlib-1.3.1/treebuild.xml @@ -1,103 +1,99 @@ -<?xml version="1.0" ?> +<?xml version="1.0" encoding="UTF-8"?> <package name="zlib" version="1.3.1"> <library name="zlib" dlversion="1.3.1" dlname="z"> - <property name="description"> zip compression library </property> - <property name="include-target-dir" value="$(@PACKAGE/install-includedir)" /> - - <!-- fixme: not implemented yet --> - <property name="compiler/c/inline" value="yes" /> - - <include-file name="zlib.h" scope="public" mode="644" /> - <include-file name="zconf.h" scope="public" mode="644" /> - - <source name="adler32.c"> - <depend name="zlib.h" /> - <depend name="zconf.h" /> - </source> - <source name="compress.c"> - <depend name="zlib.h" /> - <depend name="zconf.h" /> - </source> - <source name="crc32.c"> - <depend name="zlib.h" /> - <depend name="zconf.h" /> - <depend name="crc32.h" /> - </source> - <source name="gzclose.c"> - <depend name="zlib.h" /> - <depend name="zconf.h" /> - <depend name="gzguts.h" /> - </source> - <source name="gzlib.c"> - <depend name="zlib.h" /> - <depend name="zconf.h" /> - <depend name="gzguts.h" /> - </source> - <source name="gzread.c"> - <depend name="zlib.h" /> - <depend name="zconf.h" /> - <depend name="gzguts.h" /> - </source> - <source name="gzwrite.c"> - <depend name="zlib.h" /> - <depend name="zconf.h" /> - <depend name="gzguts.h" /> - </source> - <source name="uncompr.c"> - <depend name="zlib.h" /> - <depend name="zconf.h" /> - </source> - <source name="deflate.c"> - <depend name="zlib.h" /> - <depend name="zconf.h" /> - <depend name="zutil.h" /> - <depend name="deflate.h" /> - </source> - <source name="trees.c"> - <depend name="zlib.h" /> - <depend name="zconf.h" /> - <depend name="zutil.h" /> - <depend name="deflate.h" /> - <depend name="trees.h" /> - </source> - <source name="zutil.c"> - <depend name="zlib.h" /> - <depend name="zconf.h" /> - <depend name="zutil.h" /> - </source> - <source name="inflate.c"> - <depend name="zlib.h" /> - <depend name="zconf.h" /> - <depend name="zutil.h" /> - <depend name="inftrees.h" /> - <depend name="inflate.h" /> - <depend name="inffast.h" /> - </source> - <source name="infback.c"> - <depend name="zlib.h" /> - <depend name="zconf.h" /> - <depend name="zutil.h" /> - <depend name="inftrees.h" /> - <depend name="inflate.h" /> - <depend name="inffast.h" /> - </source> - <source name="inftrees.c"> - <depend name="zlib.h" /> - <depend name="zconf.h" /> - <depend name="zutil.h" /> - <depend name="inftrees.h" /> - </source> - <source name="inffast.c"> - <depend name="zlib.h" /> - <depend name="zconf.h" /> - <depend name="zutil.h" /> - <depend name="inftrees.h" /> - <depend name="inflate.h" /> - <depend name="inffast.h" /> - </source> + <property name="description">zip compression library</property> + <property name="include-target-dir" value="$(@PACKAGE/install-includedir)"/> + <!-- fixme: not implemented yet --> + <property name="compiler/c/inline" value="yes"/> + <include-file name="zlib.h" scope="public" mode="644"/> + <include-file name="zconf.h" scope="public" mode="644"/> + <source name="adler32.c"> + <depend name="zlib.h"/> + <depend name="zconf.h"/> + </source> + <source name="compress.c"> + <depend name="zlib.h"/> + <depend name="zconf.h"/> + </source> + <source name="crc32.c"> + <depend name="zlib.h"/> + <depend name="zconf.h"/> + <depend name="crc32.h"/> + </source> + <source name="gzclose.c"> + <depend name="zlib.h"/> + <depend name="zconf.h"/> + <depend name="gzguts.h"/> + </source> + <source name="gzlib.c"> + <depend name="zlib.h"/> + <depend name="zconf.h"/> + <depend name="gzguts.h"/> + </source> + <source name="gzread.c"> + <depend name="zlib.h"/> + <depend name="zconf.h"/> + <depend name="gzguts.h"/> + </source> + <source name="gzwrite.c"> + <depend name="zlib.h"/> + <depend name="zconf.h"/> + <depend name="gzguts.h"/> + </source> + <source name="uncompr.c"> + <depend name="zlib.h"/> + <depend name="zconf.h"/> + </source> + <source name="deflate.c"> + <depend name="zlib.h"/> + <depend name="zconf.h"/> + <depend name="zutil.h"/> + <depend name="deflate.h"/> + </source> + <source name="trees.c"> + <depend name="zlib.h"/> + <depend name="zconf.h"/> + <depend name="zutil.h"/> + <depend name="deflate.h"/> + <depend name="trees.h"/> + </source> + <source name="zutil.c"> + <depend name="zlib.h"/> + <depend name="zconf.h"/> + <depend name="zutil.h"/> + </source> + <source name="inflate.c"> + <depend name="zlib.h"/> + <depend name="zconf.h"/> + <depend name="zutil.h"/> + <depend name="inftrees.h"/> + <depend name="inflate.h"/> + <depend name="inffast.h"/> + </source> + <source name="infback.c"> + <depend name="zlib.h"/> + <depend name="zconf.h"/> + <depend name="zutil.h"/> + <depend name="inftrees.h"/> + <depend name="inflate.h"/> + <depend name="inffast.h"/> + </source> + <source name="inftrees.c"> + <depend name="zlib.h"/> + <depend name="zconf.h"/> + <depend name="zutil.h"/> + <depend name="inftrees.h"/> + </source> + <source name="inffast.c"> + <depend name="zlib.h"/> + <depend name="zconf.h"/> + <depend name="zutil.h"/> + <depend name="inftrees.h"/> + <depend name="inflate.h"/> + <depend name="inffast.h"/> + </source> </library> </package> - <!-- CFLAGS=-O #CFLAGS=-O -DMAX_WBITS=14 -DMAX_MEM_LEVEL=7 diff --git a/python/tests/test_dataframe.py b/python/tests/test_dataframe.py index e40ff32a0..555f01adb 100644 --- a/python/tests/test_dataframe.py +++ b/python/tests/test_dataframe.py @@ -333,3 +333,8 @@ def test_validate_dataframe_none_column_name(): df = pd.DataFrame([[1, 2]], columns=[None, "value"]) with pytest.raises(ValueError, match="Column name cannot be None or empty"): validate_dataframe_for_tsfile(df) + + +def test_to_dataframe_test(): + df = to_dataframe("/Users/colin/dev/tsfile/cpp/1761643915818-1-0-0.tsfile") + print(df)
