Home - AlanDevise/TsGate GitHub Wiki
Project repository · English overview · 中文项目介绍
TsGate documentation · 使用文档
TsGate is a Java 17 time-series database adapter for Spring Boot, with TGTemplate / TGQueryBuilder, four TG* POJO annotations and independent IoTDB, InfluxDB 3, InfluxDB 1.x and openGemini starters. Java API packages use com.alandevise.tsgate.*. The repository READMEs introduce the project and its architecture; this Wiki contains the complete bilingual usage guide.
TsGate 是面向 Spring Boot 的 Java 17 时序数据库适配组件,提供 TGTemplate / TGQueryBuilder、四个 TG* POJO 注解及独立的 IoTDB、InfluxDB 3、InfluxDB 1.x、openGemini starter。Java API 使用 com.alandevise.tsgate.* 包。仓库 README 保留项目介绍与架构设计,Wiki 提供完整的中英文使用说明。
TsGate 2.1.0 adds tsgate-opengemini and tsgate-opengemini-spring-boot-starter, bringing the build to four backends and nine JAR modules. The 2.1.0 BOM manages both new modules. Central 2.0.0 contains neither module. See OpenGemini integration for the exact verified default-engine versions and topologies.
TsGate 2.1.0 新增 tsgate-opengemini 与 tsgate-opengemini-spring-boot-starter,构建包含四个后端、九个 JAR 模块,2.1.0 BOM 管理这两个新模块。Central 2.0.0 不包含它们。准确的默认引擎版本与拓扑验证范围见 OpenGemini 接入指南。
2.1.3 is published through the GitHub source/tag and Maven Central; same-SHA CI and public artifact verification passed.
2.1.3 已通过 GitHub 源码/标签和 Maven Central 发布,同 SHA CI 与公开制品核验通过。
Version 2.1.3 tightens structured-filter validation, merges IoTDB physical table-name case variants before whole-batch checks, verifies backend registration in tests/CI, rejects duplicate IoTDB/InfluxDB 3 result keys, and checks direct-adapter batch counts before copying inputs. The public API, Template → SPI → adapter architecture, Java 17/client/server baselines and configuration defaults remain unchanged. See 2.1.3 release notes.
2.1.3 收紧结构化过滤参数校验,在整批预检前归并 IoTDB 物理表名的大小写变体,在测试与 CI 中核对后端登记,拒绝 IoTDB/InfluxDB 3 的重复结果键,并在复制输入前检查直接 adapter 批写的记录数。公开 API、Template → SPI → adapter 主干、Java 17/客户端/服务端基线与配置默认值均保持。 详见 2.1.3 发布说明。
The frozen implementation passed local prerelease verification: 1,476 unit checks on each of JDK 17/21/25, 323 Docker integration checks and 83 Python checks, with zero failures/errors/skips and successful owned-resource cleanup. The 166-input source manifest and implementation diff were checked before release preparation. These are the earlier local prerelease results, not newly executed 2.1.3 JDK 21/25 or Docker runs.
Final source 18fccb6 and tag v2.1.3 are pushed. Its fresh signed Temurin 17 build passed 1,476 unit checks. The release audit passed for nine JAR modules, 27 JARs / 11 POMs, 38 valid signatures and 228 signed-bundle entries; the credential scan passed. Bundle SHA-256: e192aec3177c6cb5ab2dd9cd4d6a61b31a6c8c2f01e7a0f921d599d90612bb3f. Same-SHA tag CI passed all 9 jobs, including 1,476 unit checks on each of JDK 17/21/25 and 323 Docker integration checks. Central is PUBLISHED; all 38 primary artifacts and 38 published signatures were downloaded from the public Maven repository and matched the signed bundle by SHA-256.
冻结实现已通过本地预发布验证:JDK 17/21/25 各 1,476 项单元检查、323 项 Docker 集成检查及 83 项 Python 检查,失败/错误/跳过均为零,自有资源清理通过。发布准备前已核对 166 项源码输入清单及实现差异。这是此前本地预发布结果,不是新执行的 2.1.3 JDK 21/25 或 Docker 回归。
最终源码 18fccb6 与标签 v2.1.3 已推送;该源码 fresh 签名 Temurin 17 构建通过 1,476 项单元检查。九个 JAR 模块的 27 JAR/11 POM 审计、38 份有效签名及 228 个签名上传包条目均通过,凭据扫描通过。上传包 SHA-256:e192aec3177c6cb5ab2dd9cd4d6a61b31a6c8c2f01e7a0f921d599d90612bb3f。同 SHA 标签 CI 9 个作业全部通过,覆盖 JDK 17/21/25 各 1,476 项单元检查及 323 项 Docker 集成检查。Central 已进入 PUBLISHED;从公共 Maven 仓库下载的 38 份主体制品及 38 份公开签名,SHA-256 均与签名上传包一致。
Documentation map · 文档目录
Choose a database · 配置业务数据库
All four backends are disabled by default. Configure the chosen backend directly in application.yml and explicitly set its enable flag to true. No spring.profiles.active option or enable: false entries for other backends are required. Missing or false flags keep a backend inactive even when connection settings are present. The default database is tsdb. Business applications can override it in YAML through tsdb.iotdb.database, tsdb.influxdb.database or tsdb.influxdb1.database / tsdb.opengemini.database, according to the active backend. See configuration in English for override priority, blank-value behavior and complete examples.
四个后端默认关闭。业务直接在 application.yml 中填写连接参数,并将所需后端的 enable 显式设为 true;无需配置 spring.profiles.active,也无需为其他后端填写 enable: false。省略 enable 或设置为 false 均不启用,即使保留了连接参数。默认数据库为 tsdb;业务侧可根据当前后端,在 YAML 中通过 tsdb.iotdb.database、tsdb.influxdb.database 或 tsdb.influxdb1.database / tsdb.opengemini.database 修改。配置优先级、空值规则和完整示例见中文配置说明。
Compatibility scope · 兼容范围
The verified combinations include IoTDB table model 2.0.2 with explicit tsdb.iotdb.table.rpc-compression-enabled=false, and 2.0.10 / 2.0.11 with either setting; the default SDK is 2.0.11. InfluxDB 3 Core 3.0.0 / 3.0.3 requires explicit tsdb.influxdb.strict-cursor-sql=union-all for strict cursors; 3.10.0 / 3.11.5 has been tested with both strategies and retains default or. InfluxDB OSS 1.13.1 is also verified. OpenGemini 1.4.1 / 1.5.2 default engine passed single-node and three-node/three-replica cluster validation. These results do not certify untested releases, and the old Core OR failure remains documented. The English validation page separates exact runtime/configuration checks from historical results.
已验证组合包括 IoTDB 表模型 2.0.2(须显式 tsdb.iotdb.table.rpc-compression-enabled=false)及 2.0.10 / 2.0.11(两种设置均通过),默认 SDK 为 2.0.11。InfluxDB 3 Core 3.0.0 / 3.0.3 的严格游标须显式 tsdb.influxdb.strict-cursor-sql=union-all;3.10.0 / 3.11.5 两种策略均经过验证,默认仍为 or。另已验证 InfluxDB OSS 1.13.1,以及 openGemini 1.4.1 / 1.5.2 默认引擎的单节点和三节点三副本集群。上述结果不认证未测版本,旧 Core OR 失败证据仍保留。准确运行时/配置组合及历史结果分别见中文验证说明。