docs(db): align dialect documentation with postgres-only runtime

docs/README.md still advertised a three-dialect selection guide that
db-dialects.md no longer contains, tsdb-abstraction.md documented a
MySQL upsert branch that no longer exists, and the r2dbc-postgres
README pointed at the removed dc3.db.type activation property.
This commit is contained in:
pnoker
2026-09-19 19:25:24 +08:00
committed by Henry Zhang
parent 7302014c5c
commit 4f40fc6846
3 changed files with 9 additions and 10 deletions
+4 -4
View File
@@ -2,7 +2,7 @@
Maven module: `dc3-db-r2dbc-postgres`.
The only supported relational adapter. Activated by `dc3.db.type=postgres`,
it registers the PostgreSQL dialect (identifier quoting, JSONB conventions)
backed by the `r2dbc-postgresql` driver. Adding another engine requires a
deliberate architecture change, not a new runtime switch.
The only supported relational adapter. It registers the PostgreSQL dialect
(identifier quoting, JSONB conventions) backed by the `r2dbc-postgresql`
driver, unconditionally. Adding another engine requires a deliberate
architecture change, not a new runtime switch.
+4 -4
View File
@@ -32,10 +32,10 @@
### 1. [关系库选型指南](./db-dialects.md)
- **回答的问题**:PostgreSQL / MySQL / MariaDB 三方言怎么选,差异到底在哪。
- **关键结论**:PostgreSQL 默认;MySQL 硬门槛 ≥8.0(窗口函数、CTE、SKIP LOCKED);MariaDB ≥10.6。
- **最有用的一张表**:"现状矩阵"——upsert 三种方言形态(`ON CONFLICT` / `AS new` 行别名 / `VALUES(col)`)、RETURNING 已弃用、
咨询锁(`pg_advisory_xact_lock` 事务级 vs `GET_LOCK` 会话级须 try/finally)、`operate_time` 触发器 vs 列属性、三方言契约套件 8/8。
- **回答的问题**:为什么平台关系库只保留 PostgreSQL + R2DBC,单方言约束换来什么。
- **关键结论**:PostgreSQL 18 是唯一支持的关系引擎(JSONB、CTE、RETURNING、TimescaleDB/pgvector 一站覆盖);方言选择器、
MySQL/MariaDB 驱动与跨引擎 URL 已删除,未知配置在启动校验阶段直接失败。
- **最有用的约束**:schema 指纹启动闸门——DDL 哈希不匹配拒绝启动,不做隐式降级或兼容迁移。
### 2. [时序存储选型指南](./tsdb-stores.md)
+1 -2
View File
@@ -81,8 +81,7 @@ Mono<Long> count(SeriesFilter filter, TimeWindow window, TsdbDeadline deadline);
1. `samples` 不得为 `null`、空或含 `null`,数量不得超过 `capabilities.maxAppendBatch`。
2. 每个样本的租户、设备、点、driver identity、fencing token 和时间都经过正数/范围校验。
3. PostgreSQL 使用 `ON CONFLICT`,MySQL 方言使用 `ON DUPLICATE KEY UPDATE`;两者都绑定全部参数,
不拼接用户输入。
3. Upsert 使用 `ON CONFLICT`,绑定全部参数,不拼接用户输入。
4. 返回接受数量;任意行失败时整批失败,不返回部分成功。
### 读取不变量