Skip to main content

Crate ecat_data

Crate ecat_data 

Source

Structs§

CircuitBreakerExecutor
给任意 SqlExecutor 包一层熔断。
DataPoint
Error
RdbmsRouting
读写分离路由:写落主库、读落副本轮询,跳过熔断打开(Open)的副本。
Row
Transaction

Enums§

BackendKind
出站调用的后端类别,用于把超时计数分维度 —— 否则只有一个总数,看不出是哪个后端在出事。
Dialect
数据库方言标识。
FieldValue
RdbmsError

Statics§

TIMEOUTS
各类后端的累计超时次数,下标即 BackendKind 的判别值。
TRANSACTIONS_LEAKED
未提交即 Drop 的事务累计数(Transaction 的 Drop guard 递增)。

Traits§

Cache
DocumentClient
Document-store client abstraction (e.g. MongoDB).
GraphClient
RdbmsClient
SearchClient
SqlExecutor
StorageClient
Object-storage client abstraction (e.g. S3, MinIO).
TimeoutError
可被超时包装的错误类型。
TransactionInner
事务内部实现。后端(sqlx / tiberius)实现它,Transaction 转发调用。
TsdbClient

Functions§

breaker_error_to_backend_error
ecat_errors::Error 侧的同一套映射(六个非 RDBMS trait 用的错误类型)。
map_breaker_error
熔断器错误的映射:后端自身的错误原样透出 —— 熔断只决定「调不调用」, 不改写后端报错。熔断打开/探测耗尽时后端根本没被调用,报「连接不可用」。 (RdbmsRouting 的端点与 Redis / ClickHouse 的包装层复用同一套映射,故公开。)
run_with_timeout
给一次出站调用套一层超时。
timeout_counter
取某类后端的超时计数器。