diff --git a/dc3-db/dc3-db-r2dbc-postgres/README.md b/dc3-db/dc3-db-r2dbc-postgres/README.md index 7606b0a64..3fe300a88 100644 --- a/dc3-db/dc3-db-r2dbc-postgres/README.md +++ b/dc3-db/dc3-db-r2dbc-postgres/README.md @@ -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. diff --git a/docs/README.md b/docs/README.md index cb6bb73eb..bc6bd9403 100644 --- a/docs/README.md +++ b/docs/README.md @@ -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) diff --git a/docs/design/tsdb-abstraction.md b/docs/design/tsdb-abstraction.md index 17db0d62e..c5a7efa25 100644 --- a/docs/design/tsdb-abstraction.md +++ b/docs/design/tsdb-abstraction.md @@ -81,8 +81,7 @@ Mono 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. 返回接受数量;任意行失败时整批失败,不返回部分成功。 ### 读取不变量