Skip to content

Conversation

@761417898
Copy link
Contributor

@761417898 761417898 commented Aug 12, 2025

  1. Provides complete implementation of all TagFilter operations
  2. Implement v4 tree-model interface

shuwenwei and others added 30 commits April 23, 2025 16:03
* check blank column name or table name

* add ut
…ialization (apache#470)

* Update version

* multiple optimizations

* fix bloom filter

* refactor reset in DeltaBinaryEncoder

* Cache hash code of StringArrayDeviceID (apache#453)

(cherry picked from commit f63ccb2)

* Revert "fix bloom filter"

This reverts commit 5f7f9ef.

* revert bloom filter

* fix bloom filter

---------

Co-authored-by: Haonan <[email protected]>
* Fix CPP TsFile query with time filter error

* fix test
* Fix float RLBE encoding loss of precision

* fix code coverage
* add flush method for tsfile python writer

* fix

* revert zconf

* fix and add test
* add table/column schema check.

* remove useless code.

Co-authored-by: Copilot <[email protected]>

---------

Co-authored-by: Copilot <[email protected]>
* add set and get config in tsfile py.

* fix compile on linux.

* add type and encoding check.
* fix data lossing when page num exceed 1.
* add set and get config in tsfile py.

* fix compile on linux.

* add type and encoding check.
Bumps [setuptools](https://github.com/pypa/setuptools) from 70.0.0 to 78.1.1.
- [Release notes](https://github.com/pypa/setuptools/releases)
- [Changelog](https://github.com/pypa/setuptools/blob/main/NEWS.rst)
- [Commits](pypa/setuptools@v70.0.0...v78.1.1)

---
updated-dependencies:
- dependency-name: setuptools
  dependency-version: 78.1.1
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* Add TsFileLastReader for retrieving last points in a TsFile

* Fix query last of blob series

(cherry picked from commit 3ab6c40)

* spotless

(cherry picked from commit 1f70820)

* fix series with empty chunk

* fix test name

* reduce test scale

* fix last empty page

(cherry picked from commit 40105d1)

* add ignore blob
* tmp code.

* add duplicate column name check.

* fix memory leak.

* fix memory leak.

* fix memory leak.
* use environment variable to generate main encrypt key

* delete chinese annotation

* delete chinese annotation
* fix npe when closing a last reader that have not been used

* spotless
* Resolved case sensitivity issue when reading column names.

* [tsfile-cwrapper]Resolved case sensitivity issue when reading column names.
* add timestamp check.

* fix read error when tag is empty.

* fix tag empty error.

* add no_str_to_read.

* fix fmt.

* fix memory leak.

* use std::string tag in path.

* fix memory leak.

* fix memory leak.

* fix err in win.

* fix.
…s. (apache#518)

* Revert "Resolved case sensitivity issue when reading column names. (apache#517)"

This reverts commit c501bf4.

* Resolved case sensitivity issue when reading column names.

* [Java]Resolved case sensitivity issue when reading column names.

* spotless apply

* fix cpp ut mem leak

* fix cpp ut mem leak
* add bloomfilter test.
* Fixed a bug in the multi-level index tree read process; formatted the code with clang-format; a memory leak was detected in TsFileWriterTableTest.MultiDeviceMultiFields and needs to be resolved.

* fix memory leak

* fix unittest

* Added unit tests for the multi-level index tree of the tree model

* Some non-pointer checks during memory allocation have been added

* Added some checks during memory allocation

* Added some checks during memory allocation
…apache#525)

* Fixes the issue where data with only timestamps could not be inserted or queried.

* fix issue.

* fix fmt.
761417898 and others added 6 commits August 14, 2025 10:02
* add save_encrypt_key option

* review codes
* implement camel codec

* implement basic camel

* implement simple gorilla codec

* tmp

* implement camel codec

* spotless apply

* fix some code notes

* adjusted camel codec interface

* implement tsfile-camel

* implement tsfile-camel

* add license

* upgrade commons-lang3 for CVE‑2025‑48924

* Avoid using Double

* fix camel decoder

* Optimize the getValues() interface to reuse the returned double[] array

* removed unused variables
@761417898 761417898 changed the title Provides complete implementation of all TagFilter operations Implement tree-model interface and table-model tagfilter Aug 18, 2025
761417898 and others added 15 commits August 18, 2025 17:49
* Resolve may happen the problem that type conversion.

* Format code.

* Fix code.

* Fix code.

* Modify functions related type transfer in every operators class via template
…nipulation (apache#575)

* feat: add markRange / unmarkRange / merge for high-performance bit manipulation

* fix
* Optimize aligned object memory size calculation

* spotless
apache#582)

* [CPP/C] implement default encoding/compression configuration interface

* [CPP/C] implement default encoding/compression configuration interface(c demo)

* [CPP/C] implement default encoding/compression configuration interface(c demo)

* [CPP/C] implement default encoding/compression configuration interface(c demo)

* mvn spotless:apply -P with-cpp

* [CPP/C] implement get configuration interface
Bumps [actions/first-interaction](https://github.com/actions/first-interaction) from 1.3.0 to 3.0.0.
- [Release notes](https://github.com/actions/first-interaction/releases)
- [Commits](actions/first-interaction@v1.3.0...v3.0.0)

---
updated-dependencies:
- dependency-name: actions/first-interaction
  dependency-version: 3.0.0
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [actions/setup-java](https://github.com/actions/setup-java) from 4 to 5.
- [Release notes](https://github.com/actions/setup-java/releases)
- [Commits](actions/setup-java@v4...v5)

---
updated-dependencies:
- dependency-name: actions/setup-java
  dependency-version: '5'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* Resolve may happen the problem that type conversion.

* Format code.

* Fix code.

* Fix code.

* Modify functions related type transfer in every operators class via template

* Support for what other type transfer to text/string type.

* Fix

* Allow modify value of date type, format to LocalDate result.

* Resolve the problem that BinaryColumnBuilder wrong use string of int type to transfer string of date type.

* Resolve the problem that the type of  statistics don't match

* Fix

* Fix bug.

* Format code.

* Fix IT test.

* Fix IT bug.

* Adjust some problems.

* Format code.
Bumps [actions/checkout](https://github.com/actions/checkout) from 4 to 5.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](actions/checkout@v4...v5)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-version: '5'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
…supported encoding (apache#591)

* Fix camel encoding error message and add check for each datatypes of supported encoding

* Fix UT
…on to return a LinkedHashMap (apache#593)

* Modify the TsFileSequenceReaderTimeseriesMetadataIterator next function to return a LinkedHashMap

* spotless
…e#601)

* add encrypt param for all the write/read struct initialization

* code review

boolean isTableModel();

String getDeviceID();
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

May just use toString().

Comment on lines 106 to 107
Integer pathIdx =
pathIndexMap.get(new Path(new StringArrayDeviceID(device), measurement, false));
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

May cache the DeviceIds (or the paths) as a list. Recalculating them each time can be costly.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

fixed

  private Map<String, Map<String, Path>> cachedPaths;

  // .......
    this.cachedPaths = new HashMap<>();
    for (String device : deviceList) {
      Map<String, Path> measurementPathMap = new HashMap<>();
      for (String measurement : measurementList) {
        measurementPathMap.put(measurement,
                new Path(new StringArrayDeviceID(device), measurement, false));
      }
      cachedPaths.put(device, measurementPathMap);
    }

@TreeModel
@Override
public List<MeasurementSchema> getDeviceSchema(String deviceId) throws IOException {
return tsfileReader.getMeasurement(new PlainDeviceID(deviceId));
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Do not use PlainDeviceID anymore.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

fixed

// Set default values from TSFile configuration
this.encoding =
TSEncoding.valueOf(TSFileDescriptor.getInstance().getConfig().getValueEncoder(dataType));
this.compressionType = TSFileDescriptor.getInstance().getConfig().getCompressor();
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Compression can also be determined by type now.

Comment on lines 1 to 19
/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*/

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why is the license removed

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

fixed

# Conflicts:
#	java/tsfile/src/main/codegen/templates/FilterOperatorsTemplate.ftl
#	java/tsfile/src/main/java/org/apache/tsfile/read/query/dataset/TableResultSet.java
#	java/tsfile/src/main/java/org/apache/tsfile/write/v4/DeviceTableModelWriter.java
@761417898 761417898 mentioned this pull request Oct 16, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.