pub struct MessageSql {
pub insert: &'static str,
pub fan_out: &'static str,
pub fan_out_events: &'static str,
pub claim: &'static str,
pub renew: &'static str,
pub complete: &'static str,
pub retry: &'static str,
pub bury: &'static str,
pub to_job: &'static str,
pub add_schedule: &'static str,
pub fire_schedule: &'static str,
pub notify: Option<&'static str>,
}Expand description
Every insert binds the message columns first, as $1 to $7: id, kind,
name, payload, available_at, traceparent, actor.
Fields§
§insert: &'static str§fan_out: &'static strMessage columns, then a key; skipped while a job of that name waits for it.
fan_out_events: &'static str(events, jobs, available_at, actor): events {id, payload, traceparent}, jobs
{id, name, event}.
claim: &'static str(lease_milliseconds, now, limit, mine, held_until), counting attempts past the last;
mine names by kind, and any other waits until held_until.
renew: &'static str(id, attempts, lease_milliseconds): extends a claim still held, on the database’s clock.
complete: &'static str§retry: &'static str§bury: &'static strClears the key, so a dead job holds back no new one for it.
to_job: &'static str(id, attempts, name): turns an event its lone listener ran into that listener’s job.
add_schedule: &'static str§fire_schedule: &'static strMessage columns, then the next time; returns it and whether this call queued a run (none while one waits or retries), no row when the schedule does not exist.
notify: Option<&'static str>Sent after a commit that queued messages, never within it: Postgres serializes the commits of notifying transactions on one lock.