Repository navigation
ZH Release Notes 2.1.0
2.1.0 新增 OpenGemini 支持,纳入复审后的适配层修复,并保留 Template → adapter SPI → 后端架构。Java API 使用 com.alandevise.tsgate.* 包。
TsGate 2.1.0 已正式发布到 Maven Central。Portal 状态为 PUBLISHED,全部 38 份公开 POM/JAR 下载内容均与签名上传包一致。详见发布证据与最终发行验证。
Maven groupId 为 io.github.alandevise。将 TsGate 父 POM/BOM 与所选模块版本统一为 2.1.0,只启用所选后端,并执行业务代表性回归。配置使用 tsdb.* YAML 键,默认模板 Bean 名为 tgTemplate。
Central 2.0.0 制品保持原样,且不含 OpenGemini 模块。依赖与后端升级流程见升级指南。
- 新增
tsgate-opengemini、tsgate-opengemini-spring-boot-starter,由 2.1.0 BOM 管理;发行包含九个 JAR 模块,另有父 POM 和独立 BOM。 - 准确服务端范围为 1.4.1 与 1.5.2 默认引擎,使用兼容 HTTP line protocol 与 InfluxQL;专用 Docker 矩阵覆盖单节点及真实三节点三副本部署。
- 沿用
TGTemplate、注解和链式查询,通过tsdb.opengemini.enable=true启用。集群使用可达 SQL 入口或部署侧入口;适配器不发现节点,不重放提交结果不确定的写入。 - I/O 前执行整批 measurement 与整数校验,保留同步确认、详细提交状态、查询行数/响应字节限制、逻辑结果行计数、构造时配置快照及终态关闭。
- 借用的兼容原生客户端仍为
org.influxdb.InfluxDB;稳定代理通过X-Geminidb-Version获取真实健康/版本信息。仅结构化 query/count 将准确的 measurement 缺失错误转为空/零,原生 SQL 与原生查询 DTO 保留服务端错误。
实测 HTTP 路径会先将整数字段转换为 float64。整数字段和统一查询中的精确整数型条件若超出有符号 int64 或无法由 float64 精确表示,适配器会拒绝;校验覆盖 IN/BETWEEN 的每个值,并在展开极大 BigDecimal 整数前先做有界判断。小数和零保留既有语义。原生 SQL/原生写入保留服务端精度限制,此校验不保证聚合累加或溢出后的精确性。
新 series 的索引可见性可能晚于写入确认。业务若需要观测刚写入的数据,应对期望点显式读侧轮询并设置截止时间。严格复合游标、FIELD 排序、区域日历日窗口、COLUMNSTORE/Arrow 与集群管理不在此适配器的支持范围。既有本地拓扑矩阵未覆盖 TLS、启用认证的部署及节点/入口故障切换。配置、边界和复现步骤见 OpenGemini 接入指南。
- 严格游标原始输入保留到校验阶段,非法键、null 值、多余键及规范化重名键报
ARGUMENT_ERROR,不再被丢弃;null/空 map 仍表示第一页。 - IoTDB、InfluxDB 3 starter 在原生客户端不可用时遵守
fail-fast=false的可选注入语义,与 InfluxDB 1.x 一致。必填配置仍须合法;手动初始化重试不会重建此前不可用的 Spring 原生客户端 Bean。 - 构造时捕获完整配置,包括嵌套设置与节点列表;修改配置需新实例,临时初始化失败重试与 IoTDB 连接池恢复沿用原快照。
- 后端 I/O 前校验 null query、非正 limit、负 offset 和逆序时间范围;公共 SPI 默认
count(null)同样报ARGUMENT_ERROR,其余 count 忽略分页和游标。
最低仍为无预览特性的 Java 17,已说明的 Spring Boot 与客户端基线不变。数据库支持仅覆盖兼容指南列明的能力及准确组合。
此前源码回归快照在 JDK 17/Boot 2.7.18、JDK 21/Boot 3.5.14、JDK 25/Boot 4.1.0 下各通过 888 项单元测试,另通过 290 次 Docker 集成测试、27 份无签名归档检查及 34 项 Python 运行器测试。这些历史结果不作为最终 2.1.0 重跑结果。最终计数、构建输入及制品/发布校验另记录于上面的验证和发布页面。
TsGate · Wiki home · 文档首页 · Apache-2.0 · NOTICE
Compatibility claims apply only to documented capabilities and verified versions. 兼容性承诺仅适用于已列明的能力和已验证的版本。