Skip to content

ZH Compatibility and Validation

Alan Zhang edited this page Oct 3, 2026 · 5 revisions

Home · GitHub

English | 简体中文

TsGate 2.1.0: 本页使用 com.alandevise.tsgate.*。从 2.0.0 升级时须更新 import、反射类名和包扫描配置,并重新编译。Central 2.0.0 保留 com.alandevise.tsdb.*。详见迁移步骤与发布状态。

2.1.0 发行验证

发行源码 8cf119e 包含公共 SPI count(null) 的参数错误语义修复,以及 OpenGemini 极大整数型十进制过滤值的有界校验。纯包名迁移单独记录为 2cecd41,91 个原有 Java 文件均被识别为重命名,并保留可追溯历史。最终报告位于 .local-test/release-2.1.0-20261003/。

运行时 / 范围 结果 报告
JDK 17 / Spring Boot 2.7.18 单元测试 889 项通过;失败、错误、跳过均为零 docker-existing/summary.json
JDK 21 / Spring Boot 3.5.14 单元测试 889 项通过;失败、错误、跳过均为零 unit-jdk21-final/summary.json
JDK 25 / Spring Boot 4.1.0 单元测试 889 项通过;失败、错误、跳过均为零 unit-jdk25/summary.json
既有后端 Docker 回归 114 项通过;测试容器已清理 docker-existing/summary.json
OpenGemini 1.4.1 单节点 / 三节点三副本集群 每种部署均通过 44 项 opengemini-matrix/summary.json
OpenGemini 1.5.2 单节点 / 三节点三副本集群 每种部署均通过 44 项 opengemini-matrix/summary.json
Temurin 17.0.14+7 最终签名构建 889 项单测通过;27 个 JAR 附件审计通过;38 个 PGP 签名及四种校验和验证通过 build-status.json、release-artifacts.json、bundle-verification.json

290 项 Docker 集成测试的失败、错误、跳过均为零;所有矩阵测试容器和网络均已清理。运行时与 Docker 回归的构建输入摘要一致,签名制品对应上述发行源码提交。11 个 Maven 模块包括父 POM、独立 BOM 和 9 个 JAR 模块。签名密钥指纹:D7FB5E1158537706FB2023D62DCFFB6B26BE7EB5。发行包 SHA-256:b6cbc4927587223bfbad9b613c63cf0894e1f014571368db8de4d4ce580c1193。

最终源码也通过 JDK 17/21/25 GitHub CI 及 Java 17 无签名制品检查。远端 Docker 作业未请求,上述 Docker 证据来自本地环境。

下方 888 项单测 / 290 项 Docker 的旧快照保留为历史证据;Central 发布状态另见测试与发布。

包名迁移回归快照(2026-10-03)

已记录的迁移快照使用 com.alandevise.tsgate.*,迁移了 103 个 Java 文件及 18 个 main/test 包目录。SHA-256 核对确认包名迁移本身保留既有 Java 实现;Spring 自动装配资源、反射类名、运行器全限定类名、Javadoc 检查路径与示例同步更新。随后 2.1.0 复审修复及统一版本的发行构建另行验证。

迁移后源码在 17/2.7.18、21/3.5.14、25/4.1.0 三组 JDK/Boot 下各通过 888 项单元测试;既有后端 Docker 回归通过 114 项;openGemini 1.4.1 与 1.5.2 的单节点、三节点三副本四种部署各通过 44 项适配器/starter 测试。失败、错误、跳过均为零,测试 Docker 资源均已清理。九个 JAR 模块的 27 份无签名 binary/source/Javadoc 归档检查通过,34 项 Python 运行器回归测试也通过。各次 Java 验证使用相同构建输入摘要。报告位于 .local-test/package-migration-20261003/;较早的报告仍保留实际测试时的包名和源码快照。

包名迁移的验证范围

下方较早记录(包括迁包前 OpenGemini 的 888 项单元测试及每环境 44 项集成测试)保留原源码快照、清单、JSON/XML 报告、日志与不可变源码链接。新命名空间由上方单独的迁移回归验证;两类快照都不能代替最终 2.1.0 发行构建的验证。

2.1.0 的 OpenGemini 范围

TsGate 2.1.0 新增 tsgate-opengemini 与 tsgate-opengemini-spring-boot-starter,构建包含四个后端、九个 JAR 模块,2.1.0 BOM 管理这两个新模块。Central 2.0.0 不包含它们。准确的默认引擎版本与拓扑验证范围见 OpenGemini 接入指南。 历史记录保留原源码快照、运行时、用例数及七模块制品检查;包名迁移前的 OpenGemini 源码验证在下方单独记录。

2026-10-03 包名迁移前的源码验证

扩展后的源码在三组已声明 JDK/Boot 下各通过 888 项单元测试。原有三个后端的代表性 Docker 回归通过 114 项集成测试;后续 OpenGemini 专属修复没有改变这三个后端的生产实现。九个 JAR 模块的 27 份无签名 binary/source/Javadoc 制品检查通过。以下每种环境均通过适配器和 starter 两组测试,失败、错误、跳过均为零,测试容器和网络均清理完毕。这是本地结果,不代表 GitHub CI 运行或 Maven 发布。

服务端 部署 副本数 Java 集成测试
1.4.1 单节点 1 44 通过;失败、错误、跳过均为 0
1.4.1 三节点集群 3 44 通过;失败、错误、跳过均为 0
1.5.2 单节点 1 44 通过;失败、错误、跳过均为 0
1.5.2 三节点集群 3 44 通过;失败、错误、跳过均为 0

默认引擎的精确配置、新 series 异步可见性、HTTP 整数精度边界与复现命令见 OpenGemini 接入指南。报告保存在 .local-test/opengemini-20261003/。

适配层契约修复的源码验证(2026-10-03)

四项修复分别是:严格游标原始输入保留到校验阶段、原生资源不可用时正确遵守 fail-fast=false 的可选注入语义、在 adapter 构造时捕获完整配置、统一直接查询的基础参数校验。Template → adapter SPI → 后端的主干结构和 Java 17 基线保持不变。这份历史验证对应已发布 2.0.0 制品之后、准备 2.1.0 之前的源码更新,当时未发布新的 Maven 版本;四项修复现已纳入 2.1.0。

运行环境 实际验证范围 结果
JDK 17.0.14 / Boot 2.7.18 完整单元测试 723 项通过
JDK 21.0.11 / Boot 3.5.14 完整单元测试 723 项通过
JDK 25.0.2 / Boot 4.1.0 完整单元测试 723 项通过
JDK 17.0.14 / Boot 2.7.18 完整 Docker 回归:IoTDB 2.0.10 / SDK 2.0.11、InfluxDB OSS 1.13.1、InfluxDB 3 Core 3.11.5 114 项通过:106 项后端 + 8 项 starter 用例
Java 17 无签名制品检查 二进制、源码、Javadoc 各七个 JAR 通过

最终全部用例的失败、错误和跳过均为零。新增 85 项单测覆盖非法游标条目与规范化重名、InfluxDB 3 两种策略下合法空白和大小写不同的键、原生客户端可选注入及启动清理、初始化重试和 IoTDB 恢复时的配置一致性,以及直接查询和 count 逆序时间范围在 I/O 前报错。count 继续忽略分页及游标。最终各次运行的源码清单与生产代码、测试和构建输入一致。对应源码快照。

每个后端新增一项 Docker 回归:初始化前后修改原 Properties,再验证 adapter 与原生客户端仍读取快照指定的数据库,且非法查询不影响后续连接使用。两个 InfluxDB 用例还验证原生写入;InfluxDB 3 用例验证合法的带两侧空白严格游标。原有分页、写入、限额、生命周期与 starter 场景均已重跑。全程复用缓存镜像,测试容器均已移除。

本地报告保留于被忽略的 .local-test/design-fixes-20261003/:docker-final/、unit-jdk21/、unit-jdk25/ 及 validation-summary.json。较早的编译失败与中间成功运行分别保留,上述计数对应最终源码。下方其他数据库/SDK 版本未在本次重跑,保留原有历史证据。配置迁移和原生客户端可选获取见源码变更记录。

显式启用规则验证(2026-09-29)

三个后端默认 false,仅在显式配置 enable: true 时启用。只填写连接参数不会启用后端;直接使用普通 application.yml 即可,无需启用 Spring profile,也无需为其他后端填写 false。

运行环境 验证范围 结果
JDK 17.0.14 / Boot 2.7.18 全量单元测试 638 项通过
JDK 21.0.11 / Boot 3.5.14 全量单元测试 638 项通过
JDK 25.0.2 / Boot 4.1.0 全量单元测试 638 项通过
JDK 17.0.14 / Boot 2.7.18 全量 Docker 回归:IoTDB 2.0.10 / SDK 2.0.11、InfluxDB OSS 1.13.1、InfluxDB 3 Core 3.11.5 111 项通过
Java 17 无签名发行检查 二进制、源码、Javadoc 附件 通过

所有用例均无失败、错误或跳过。覆盖显式启用、省略/false、普通 YAML、环境变量与自定义属性源、非法开关、构造客户端前检测冲突,以及不绑定未启用后端连接参数、不创建其客户端。Docker starter 用例验证实际写查和原生客户端,并保留未启用后端含未解析占位符的配置。

Docker 运行同时复验了 638 项单测。全程复用缓存镜像,测试容器均已移除;各次运行的源码清单与已验证的生产代码、测试及构建输入一致,对应源码快照及 CI 结果可在 GitHub 查看。本次不扩大数据库版本清单,下方其他版本组合保留其历史验证证据。

已确认修复的历史验证(2026-09-29)

正确性修复与 Maven 坐标已按生产源码和 POM 验证。当时验证的快照使用 com.alandevise.tsdb.* Java 包和 io.github.alandevise Maven 制品。

运行组合 实际范围 结果
JDK 17.0.14 / Boot 2.7.18 完整单元测试 634 项通过
JDK 21.0.11 / Boot 3.5.14 完整单元测试 634 项通过
JDK 25.0.2 / Boot 4.1.0 完整单元测试 634 项通过
代表版本 Docker 回归 IoTDB 2.0.10 / SDK 2.0.11、InfluxDB OSS 1.13.1、Core 3.11.5 103 项后端测试 + 8 项 starter 测试通过
较旧 Core 3.0.3 仅 UNION 策略的链式大小写列及真实 _time / TIME 回归 5 项通过
独立消费者 五个使用发布坐标的工程,单 BOM 导入、Boot parent、IoTDB SDK 2.0.10 覆盖 依赖解析与编译通过;5 个 Docker 场景 / 7 个 Spring 上下文通过
无签名发行制品 二进制、源码、Javadoc 各七个 JAR 坐标、许可证/版权声明、源码内容、生成 API 文档、Java 17 字节码检查通过;排除测试材料

此较早结果合并不同阶段通过的 103 项后端用例和 8 项 starter 用例,最终成功结果的失败、错误和跳过均为零。上方当前 638 项单测 / 111 项集成测试随后以显式启用规则完整执行了套件。

独立消费者 Docker 场景另使用本地官方二进制构建的 IoTDB 2.0.11 镜像,验证 SDK 2.0.11 / 2.0.10、压缩 true / false 与 12 行写入;同时覆盖 InfluxDB 1.13.1、Core 3.11.5,包含原生 Arrow Flight。这些冒烟场景与代表版本 111 项套件分别统计。本轮复用本地镜像,临时容器均已清理。证据保留在 .local-test/2026-09-29-approved-fixes/,包括消费者子目录与源码清单。下文历史版本组合保留原有证据,不表述为本轮全版本重测。

本地验证

单 BOM 消费者验证

在 JDK 17.0.14 / Boot 2.7.18 下,五种独立消费者使用单个 tsgate-bom,均通过模型解析、依赖树核对与编译。五个 Docker 场景 / 七个 Spring 上下文也通过:IoTDB 2.0.11 分别使用 SDK 2.0.11 和显式覆盖的 2.0.10、各测试两种 Tablet 设置;InfluxDB OSS 1.13.1;InfluxDB 3 Core 3.11.5 分别使用 Boot BOM 和 Boot starter parent。两个 InfluxDB 3 消费者均执行了原生 Arrow Flight 查询。

已验证运行时版本保持为 OkHttp 4.12.0、Netty 4.2.15.Final、gRPC 1.81.0、Arrow 19.0.0、Jackson 2.21.4;IoTDB SDK 覆盖后配套依赖跟随所选官方 SDK。使用缓存镜像且容器均已清理。证据为 .local-test/consumer-bom-20260929/model-summary.json 和 docker-summary.json。这些非 Web 消费者不认证任意 WebFlux/gRPC 共存或新的数据库版本。

IoTDB SDK 2.0.11 与 Tablet RPC 编码

默认 Java SDK 现为 iotdb-session:2.0.11。实际解析的 IoTDB SDK family 为 2.0.11,TSFile / common 为 2.4.0,libthrift 为 0.23.0;此前 SDK 2.0.10 搭配的 TSFile / common 为 2.3.1。服务端与各项依赖的版本号不能互相套用。业务侧 dependencyManagement 覆盖及 dependency tree 核对方式见升级与 SDK 覆盖。

tsdb.iotdb.table.rpc-compression-enabled 默认 true,可以省略;2.0.2 等不兼容旧表模型服务端由业务显式配置为 false。此参数控制 Tablet RPC 紧凑编码/压缩,与 Thrift 传输或磁盘压缩无关。每个实际 Tablet 不足 10 行的小写入通过,并不能证明较大 Tablet 编码也兼容;必须让一个 Tablet 至少包含 10 行并写后回查,按所选 SDK/服务端/开关组合记录结果。

使用 SDK 2.0.11,已在 JDK 17.0.14 / Spring Boot 2.7.18、JDK 21.0.11 / Spring Boot 3.5.14、JDK 25.0.2 / Spring Boot 4.1.0 三个组合分别通过全模块 513 项单元测试,失败、错误、跳过均为零。单独的 Java 17 单测报告为 .local-test/2026-09-29-iotdb-sdk-upgrade/java17-all-unit/summary.json;单测/集成组合报告归档位置见下方矩阵。单测包含新增配置与请求编码检查,但不能替代真实服务端验证。

以下 SDK 2.0.11 升级验证已经完成。所列断言的失败、错误、跳过均为零;预期拒绝验证通过不等于写入成功。

JDK / Spring Boot 实际 IoTDB 服务端 单测 / IoTDB Docker 集成 Tablet RPC 结果 独立消费者应用
17.0.14 / 2.7.18 2.0.2 单测在上方单独记录;38 项 IT 既有 28 项 IT 使用 false;false 的 9、10、12、1024、1025 行写后回查均正确;true 的 9 行通过,10/12/1024/1025 行四项正确验证预期拒绝 默认 SDK 2.0.11、false、单个 Tablet 12 行、Spring 绑定与关闭通过
17.0.14 / 2.7.18 2.0.10 513 / 38 既有 28 项 IT 使用默认 true;true、false 两种设置的 9、10、12、1024、1025 行写后回查均正确 默认 SDK 2.0.11 与显式覆盖 SDK 2.0.10,分别通过两种设置的 12 行、Spring 绑定与关闭验证
21.0.11 / 3.5.14 2.0.11 513 / 38 既有 28 项 IT 使用默认 true;两种设置的五个行数边界均通过 默认 SDK 2.0.11 的两种设置均通过 12 行、Spring 绑定与关闭验证
25.0.2 / 4.1.0 2.0.11 513 / 38 既有 28 项 IT 使用默认 true;两种设置的五个行数边界均通过 默认 SDK 2.0.11 的两种设置均通过 12 行、Spring 绑定与关闭验证

1025 行用例跨越默认 1024 行的 Tablet 分片边界。在服务端 2.0.2 上,四项预期拒绝用例确认了状态 301、适配层 UNKNOWN 提交状态以及写入失败后查询零行;它们不代表可以随意重试失败写入,也不代表该服务端的业务批量写入可使用默认 true。四组共完成 152 项集成断言(含上述四项预期拒绝)和 5 次独立消费者运行;该数量不表示 152 项成功写入,也不认证其他组合。

独立消费者不继承 TsGate 父 POM。SDK 2.0.10 覆盖场景使用同一份已经按 SDK 2.0.11 编译的 TsGate JAR;实际依赖为 IoTDB SDK family 2.0.10、TSFile / common 2.3.1、libthrift 0.14.1,没有混用 SDK family 版本。此结果只验证所列的 12 行消费者场景,不代表 SDK 2.0.10 的全量回归认证。报告和依赖树归档于 .local-test/2026-09-29-iotdb-sdk2011/java17-boot2718-iotdb202/ 及同级的 java17-boot2718-iotdb2010/、java21-boot3514-iotdb2011/、java25-boot410-iotdb2011/ 目录。

这些 SDK / 编码测试早于后续 API、生命周期及启用规则修复,保留原有源码快照与计数;当前代表版本回归列在上方。这个开关与依赖升级都不等于全版本或未来版本必然兼容。

InfluxDB 3 游标策略验证

策略实现后,全模块单元测试在 JDK 17.0.14 / Spring Boot 2.7.18 下通过 564/564 项,失败、错误、跳过均为零。其中包括此前 513 项,以及新增 44 项 SQL 策略测试和 7 项 Spring 绑定测试。77 个编译后的项目生产类均保持 class major 61(Java 17)。执行命令为 mvn -o -B clean test,摘要和日志为 .local-test/2026-09-29-influx3-union/java17-unit-summary.json 与 java17-all-unit.log。这是适配层单测结果,不能用来证明未测服务端版本兼容。

最终 Docker 矩阵使用与工作区一致的 57 个生产代码/POM 文件,官方客户端保持 influxdb3-java:1.10.0。212 次集成测试执行全部通过,失败、错误、跳过均为零:

实际 Core 服务端 JDK / Spring Boot 既有后端 + starter 测试 新增严格游标用例 IT 合计
3.0.0 17.0.14 / 2.7.18 union-all:28 11,含预期的旧 OR 失败 39
3.0.3 17.0.14 / 2.7.18 union-all:28 11,含预期的旧 OR 失败 39
3.10.0 21.0.11 / 3.5.14 or:28,union-all:28 11 67
3.11.5 25.0.2 / 4.1.0 or:28,union-all:28 11 67

既有 28 项包括 25 项后端、2 项 starter 和 1 项多 starter 共存测试。新增 11 项覆盖四种排序形态的完整翻页、混合方向与 FIELD 优先、相同时间戳及多 tag、显式投影与隐藏排序键、区分大小写的 value / Value 同表列、外层 OFFSET、包含边界的时间分支剪除、全部分支为空及行数保护。每个旧服务端的一项测试会对四种旧 OR 形态断言 HTTP 500 / CONNECTION_ERROR。预期拒绝表示错误契约测试通过,不表示该服务端的 OR 查询兼容;原生 SQL 仍不改写。

7 项配置绑定测试还分别在 JDK 21.0.11 / Boot 3.5.14 与 JDK 25.0.2 / Boot 4.1.0 下通过,即 14 次额外单元测试执行,与 212 IT 及上述 Java 17 全量单测分开计数。加上 Java 17 的绑定验证,已确认省略/空白保留 or、两种文档配置值可绑定、非空白非法值失败。这不表示本次 SQL 调整已在两个新运行时重新执行全部 564 项单测。

准确的旧版已验证基线是 Core 3.0.0,须显式配置 tsdb.influxdb.strict-cursor-sql=union-all;Core 3.0.3 的严格游标有同样要求。Core 3.10.0 / 3.11.5 两种策略均通过,可继续使用默认 or。这些结果不认证中间版本、未来版本、Enterprise 或 Cloud。归档 .local-test/2026-09-29-influx3-union/ 包含 summary.json、REPORT.zh-CN.md、各版本 XML/日志、实际进程版本、镜像 digest 和源码 hash;本轮只使用缓存镜像,验证后测试容器已清理。较早的尝试与最终矩阵分开保存。

独立原生 SQL 探针还在 Core 3.0.3 和 3.11.5 上验证了四种排序各四页、隐藏投影和 OFFSET。两版都复现了矛盾时间范围的规划器 HTTP 500;剪除可证明为空的分支、全空时使用显式 FALSE 条件后,均返回 HTTP 200。这些探针不计入 212 IT,也不能证明任意原生 SQL 都兼容。

已发现的严格复合游标第二页 HTTP 500 属于 InfluxDB 3 Core 3.0.0 / 3.0.3,不是 InfluxDB 1.x。此前服务端审计中,这两个旧 Core 版本各通过 28 项中的 27 项,游标用例失败;Core 3.11.5 的 28 项均通过。3.0.3 的原生 HTTP SQL 直接请求也复现服务端规划器故障。InfluxDB 1.x 使用另一套 InfluxQL 适配器,严格复合游标会明确返回 UNSUPPORTED_OPERATION。

此前审计使用 OR SQL 形态,历史证据保留于 .local-test/compat-audit-20260929/influxdb3/。TsGate 现已实现显式 tsdb.influxdb.strict-cursor-sql: union-all,作用于结构化严格游标续页,默认仍为 or。不增加自动版本探测或 HTTP 500 重试。必须将具体配置的新验证与原来的失败分开记录,准确版本通过不能认证中间所有版本。配置和边界见配置说明与分页说明。

复现测试

各模块 src/test/ 的测试源码已纳入版本控制;共享运行脚本和固定版本 Docker 配置也位于 tsgate-core/src/test/。本地报告、下载设施和凭据继续忽略。检出源码后,准备 Java 17+、Maven 3.9+、Python 3;集成测试另需 Docker:

python3 tsgate-core/src/test/scripts/run-tests.py unit --spring-boot 2.7.18
python3 tsgate-core/src/test/scripts/run-tests.py unit --spring-boot 2.7.18 --release-artifacts
python3 tsgate-core/src/test/scripts/run-tests.py docker --spring-boot 2.7.18

通过 JAVA_HOME 选择对应 JDK。依赖缓存齐全时可加 --offline --maven-repo /path/to/cache;--pull never 复用已有镜像。报告默认写入新建的 .local-test/ci/ 子目录,也可通过 --output 指定新的输出目录。共享代表矩阵使用官方 IoTDB 2.0.10、InfluxDB OSS 1.13.1、InfluxDB 3 Core 3.11.5,不依赖历史运行中本地自制的 IoTDB 2.0.11 镜像。

GitHub CI 配置覆盖三组已声明 JDK / Boot 单测,Java 17 同时构建无签名发行附件。Docker 仅在维护者手动选择 run_docker=true 时执行,详见测试与发布。上述历史 .local-test/ 脚本和报告用于保留过往证据,不是共享 runner 的必需依赖。已完成的 GitHub Actions 运行通过三个单测组合及 Java 17 无签名制品检查,该次未请求远端 Docker 任务。

如何扩展兼容范围

服务端版本兼容与数据库功能覆盖是两件事。TsGate 的目标是为已声明的共同能力提供一致契约,并明确保留后端差异;它不承诺统一所有数据库功能或让 SQL 与 InfluxQL 完全等价。

兼容策略采用明确版本清单。此前全矩阵验证了 SDK 2.0.10 搭配 IoTDB 表模型 2.0.10 / 2.0.11,以及 InfluxDB 3 Core 3.10.0、InfluxDB OSS 1.13.1;单独 Core 审计又验证了 3.11.5。新的 IoTDB SDK/压缩组合与 InfluxDB 3 游标策略矩阵在上方单独记录,不从旧矩阵推断;后者另行验证了 Core 3.0.0 / 3.0.3 显式 union-all,以及 3.10.0 / 3.11.5 的两种策略。 这些结果都不能直接改写成不受限的 >= 承诺。 若要声明“从 X 开始支持”,应同时给出最高已验证版本、产品版本类型和支持的功能;在尚未测试中间版本时继续列出具体版本。 未来版本先完成回归,再更新支持清单。

IoTDB 表模型 2.0.2 现已作为更早的明确目标完成验证,条件为 SDK 2.0.11 和显式关闭 Tablet RPC 压缩;这不认证未测的中间或更早版本。更早的 InfluxDB 1.x,以及其他 IoTDB SDK/服务端/设置组合,仍需单独增加目标和实测。

易用性与公开组件成熟度

应在明确列出的已验证版本和能力范围内使用本组件。源码公开不扩大兼容范围,也不代表提供生产服务等级保证。

已具备的基础包括:独立 starter、统一注解 POJO 与查询入口、集中配置、明确错误码、批次提交状态、查询资源限制,以及真实数据库回归。 普通写查的业务代码较少,但接入成本在后端之间并不相同:IoTDB 最接近直接引入 starter 后配置连接;InfluxDB 1.x 需要对齐 OkHttp / Jackson;InfluxDB 3 还需协调 Arrow / Netty / gRPC 并配置 Arrow JVM 参数。 四个后端默认关闭。业务直接在 application.yml 中填写连接参数,并将所需后端的 enable 显式设为 true;无需配置 spring.profiles.active,也无需为其他后端填写 enable: false。省略 enable 或设置为 false 均不启用,即使保留了连接参数。同一 Spring 上下文目前只允许一个后端。

已确认的严格游标、IoTDB 数值/生命周期及结果类型修复有对应专项回归。上方历史矩阵保留原源码快照与计数,不能自动视为新实现的认证。稳定公开发布仍需与支持范围对应的认证/TLS、故障恢复、业务依赖共存和依赖安全验证。


← 结果映射与后端边界 · 升级、API 与许可证 →

2.1.0 中的 OpenGemini

TsGate 2.1.0 包含独立的 OpenGemini adapter 与 starter。配置、默认引擎边界及准确版本测试见 OpenGemini 接入指南,迁移要求见 2.1.0 发布说明。

Clone this wiki locally