Skip to main content

Crate dovecote_sqlx_sqlite

Crate dovecote_sqlx_sqlite 

Source
Expand description

SQLite schema and SQLx boundary for Dovecote.

SQLite’s single-writer model is a distinct support contract. Write and claim transactions therefore use explicit BEGIN IMMEDIATE; busy errors are retried only by the bounded policy configured on SqliteDovecote.

Structs§

BusyConfig
Bounded busy handling for SQLite’s single-writer lock.
CrateVersion
Migration
MigrationCompatibility
MigrationCompatibilityError
SnapshotPager
A finite pager retaining one SQLite read transaction. The explicit marker makes accidental movement across unrelated executors a compile-time error.
SqliteDovecote
SQLite adapter for Dovecote’s durable event and delivery schema.

Enums§

ClaimError
EnqueueError
FinalizeError
Errors returned by the migration-only delivery finalizer.
ImportError
Errors returned by the migration-only importer.
MutationError
PageError
SchemaError
TransientKind
Errors that can be retried by the adapter’s bounded busy policy.

Constants§

DEFAULT_BUSY_RETRIES
Default number of whole-operation retries after each configured busy timeout.
DEFAULT_BUSY_TIMEOUT
Default per-connection wait before returning SQLITE_BUSY.
MIGRATIONS
SCHEMA_VERSION

Functions§

ack
begin_enqueue
Alias for begin_write for callers about to enqueue an event.
begin_snapshot
Begins one finite read transaction and records its row-id ceiling only after the snapshot has been established.
begin_write
Begins a caller write transaction using the default busy policy. The returned transaction is safe to pass to enqueue.
check_schema
Verifies the exact v1 table shape, constraints, indexes, and foreign key of the installed schema. It never applies a migration.
claim
enqueue
Inserts an event and its delivery in the caller’s transaction.
finalize_pending_delivery_for_migration
Finalises one canonical pending migration import in the caller-owned transaction.
import_for_migration
Imports one event and a portable legacy delivery state in the supplied transaction. The caller remains responsible for commit or rollback.
page
Reads one independent live page. Separate calls do not share a snapshot.
quarantine
release
renew
retry