Skip to main content

Crate awa

Crate awa 

Source
Expand description

Awa — Postgres-native background job queue for Rust and Python.

This is the facade crate that re-exports the main types from awa-model, awa-macros, and awa-worker for ergonomic usage.

Re-exports§

pub use awa_model as model;
pub use awa_worker as worker;

Modules§

admin
insert
migrations

Structs§

Client
The Awa worker client — manages dispatchers, heartbeat, and maintenance.
ClientBuilder
Builder for the Awa worker client.
HealthCheck
Health check result.
InsertOpts
Options for inserting a job.
InsertParams
Parameters for bulk insert.
JobContext
Context passed to worker handlers during job execution.
JobRow
A row from the awa.jobs table.
PeriodicJob
A periodic job schedule definition.
PeriodicJobBuilder
Builder for PeriodicJob.
QueueConfig
Configuration for a single queue.
QueueHealth
Per-queue health.
RateLimit
Rate limit configuration for a queue.
UniqueOpts
Uniqueness constraint options.

Enums§

AwaError
BuildError
Errors returned when building a worker client.
JobError
Error type for job handlers — any error is retryable unless it’s terminal.
JobResult
Result of executing a job handler.
JobState
Job states in the lifecycle state machine.
QueueCapacity
Capacity information for a queue, mode-dependent.

Traits§

JobArgs
Trait for typed job arguments.
Worker
Worker trait — implement this for each job type.

Functions§

insert
Insert a job with default options.
insert_many
Insert multiple jobs in a single statement.
insert_many_copy
Insert many jobs using COPY for high throughput.
insert_many_copy_from_pool
Convenience wrapper that acquires a connection from the pool.
insert_with
Insert a job with custom options.

Derive Macros§

JobArgs
Derive macro for job argument types.