Skip to main content

Crate natx_core

Crate natx_core 

Source
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§

DataSourceCatalog
业务作用:作为单个 Application 的冻结 datasource 名称与 driver 权威。
DataSourcePoolConfig
业务作用:承载两种数据库连接池共同使用的启动配置,不解释具体 URL scheme。
DatabaseCapabilities
业务作用:声明当前编译产物实际包含的数据库后端,避免把可解析 driver 误当成已编入能力。
DatasourceRef
业务作用:携带经过统一校验的 datasource 身份,使各 driver 不依赖临时字符串解释名称。
DriverScopeError
业务作用:描述 driver task-local 的跨后端嵌套拒绝。
ManagedInstallationToken
业务作用:证明调用方持有当前 Bootstrapping owner,可执行关闭态安装与状态迁移。
ManagedRegistryOwner
业务作用:标识唯一 Application 对 catalog 与 typed registry 的共同所有权。

Enums§

BootstrapKind
业务作用:区分常规配置建池与 UserHook 延后 default 引导。
CatalogBuildError
业务作用:描述冻结 catalog 构造失败的无连接副作用原因。
CommitOutcome
业务作用:描述数据库对 COMMIT 的可确认结果,供 driver 映射协议级错误。
DataSourceLookupError
业务作用:为 typed getter 提供稳定的 datasource 查找失败分类。
DatabaseDriver
业务作用:标识 datasource 使用的数据库协议与事务实现。
DatasourceNameError
业务作用:描述 datasource qualifier 在配置边界被拒绝的稳定原因。
PoolConfigError
业务作用:描述公共池参数在任何网络 I/O 前被拒绝的原因。
RegistryCoordinationError
业务作用:对进程级 datasource 模式变化给出稳定拒绝原因。
RegistryModeSnapshot
业务作用:暴露进程 datasource 模式的低基数诊断快照。
TxDecision
业务作用:对显式事务裁决的全部失败阶段进行封闭分类。
TxEntryError
业务作用:让加法事务入口分别保留 datasource 查找与事务执行失败,避免调用方解析文本。
TxRollbackCause
业务作用:保留物理回滚失败之前的原始裁决来源。
TxRunError
业务作用:封闭提交、回滚和基础设施失败分类,供消息 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 与诊断字段。