Expand description
数据库后端中立的 datasource 身份、受管所有权与事务裁决合同。
本 crate 不创建连接,也不依赖 SQLx 的数据库 feature。MySQL、PostgreSQL 与 SQLite driver crate 通过同一进程协调器发布 typed registry,确保同一 Application 只有一张名称与 driver catalog。 每个 datasource 独立选择编入的 driver;完整 catalog 开放前 getter 不发放资源,错 driver 拒绝。 SQLite 文件 owner 与物理连接生命周期由对应 adapter 负责,本 crate 只裁决共享身份与准入。 连接观测按固定 datasource 与 purpose 区分 Pool acquire、事务槽等待和执行前拒绝;取消只收口 一次终态,Pool 状态为近似快照。等待日志与有界通知不能改变连接结果,不计作 Mapper 执行耗时。
Modules§
- observability
- 连接等待、事务连接槽和拒绝门禁的有界原子观测;连接池状态只在指标出口读取。
Structs§
- Data
Source Catalog - 业务作用:作为单个 Application 的冻结 datasource 名称与 driver 权威。
- Data
Source Pool Config - 业务作用:承载两种数据库连接池共同使用的启动配置,不解释具体 URL scheme。
- Database
Capabilities - 业务作用:声明当前编译产物实际包含的数据库后端,避免把可解析 driver 误当成已编入能力。
- Datasource
Ref - 业务作用:携带经过统一校验的 datasource 身份,使各 driver 不依赖临时字符串解释名称。
- Driver
Scope Error - 业务作用:描述 driver task-local 的跨后端嵌套拒绝。
- Managed
Installation Token - 业务作用:证明调用方持有当前 Bootstrapping owner,可执行关闭态安装与状态迁移。
- Managed
Registry Owner - 业务作用:标识唯一 Application 对 catalog 与 typed registry 的共同所有权。
Enums§
- Bootstrap
Kind - 业务作用:区分常规配置建池与 UserHook 延后 default 引导。
- Catalog
Build Error - 业务作用:描述冻结 catalog 构造失败的无连接副作用原因。
- Commit
Outcome - 业务作用:描述数据库对 COMMIT 的可确认结果,供 driver 映射协议级错误。
- Data
Source Lookup Error - 业务作用:为 typed getter 提供稳定的 datasource 查找失败分类。
- Database
Driver - 业务作用:标识 datasource 使用的数据库协议与事务实现。
- Datasource
Name Error - 业务作用:描述 datasource qualifier 在配置边界被拒绝的稳定原因。
- Pool
Config Error - 业务作用:描述公共池参数在任何网络 I/O 前被拒绝的原因。
- Registry
Coordination Error - 业务作用:对进程级 datasource 模式变化给出稳定拒绝原因。
- Registry
Mode Snapshot - 业务作用:暴露进程 datasource 模式的低基数诊断快照。
- TxDecision
- 业务作用:对显式事务裁决的全部失败阶段进行封闭分类。
- TxEntry
Error - 业务作用:让加法事务入口分别保留 datasource 查找与事务执行失败,避免调用方解析文本。
- TxRollback
Cause - 业务作用:保留物理回滚失败之前的原始裁决来源。
- TxRun
Error - 业务作用:封闭提交、回滚和基础设施失败分类,供消息 ACK 与重试策略裁决。
Constants§
- DEFAULT_
DATASOURCE - 默认 datasource 的规范名称。
- MAX_
DATASOURCE_ NAME_ BYTES - datasource qualifier 的最大 UTF-8 字节数。
- MAX_
MANAGED_ DATASOURCES - 单个受管 Application 可发布的 datasource 总数上限。
Functions§
- abort_
managed_ bootstrap - 业务作用:在 typed 资源尚未发布或已经清空时释放 Bootstrapping。
- begin_
managed_ bootstrap - 业务作用:为 Application 领取唯一 owner 并进入配置建池或延后 default 的启动模式。
- clear_
managed_ catalog - 业务作用:在 driver 资源已封口后按 owner 撤销 managed catalog。
- current_
driver - 业务作用:读取当前任务的 ambient transaction driver 哨兵。
- ensure_
driver - 业务作用:在执行 SQL 或进入 driver 事务前拒绝跨 driver 复用。
- install_
managed_ catalog - 业务作用:安装完整关闭态 catalog,形成尚不可读的 Managed 权威。
- managed_
catalog - 业务作用:读取当前开放的 managed catalog,供 Application getter 与观测聚合使用。
- open_
managed_ catalog - 业务作用:在 typed registry 与资源容器全部提交后开放 managed catalog。
- redact_
url - 业务作用:去掉 URL 中的 userinfo,同时保留 scheme 供 Debug 识别 driver。
- redacted_
endpoint - 业务作用:生成不包含 scheme、用户信息和连接参数的数据库 endpoint。
- registry_
mode - 业务作用:读取当前进程 datasource 模式,供启动门禁和诊断复验。
- resolve_
datasource - 业务作用:解析全局 datasource 并复验 typed getter 的 driver 身份。
- scope_
driver - 业务作用:仅在事务业务体执行期间发布 driver 哨兵,阻止嵌套进入另一后端。
- validate_
datasource_ name - 业务作用:校验 datasource 名称可安全用于配置键、指标 label 与诊断字段。