DNS and webhooks share the outbox. Failures never roll back the lease.
- Overview outbox lag, or SQL:
SELECT id, topic, attempts, status, last_error, next_attempt_at
FROM outbox WHERE status <> 'done' ORDER BY id LIMIT 50;
pendingwith a futurenext_attempt_atis backoff. Fix BIND/TSIG/AD/clock.failed(8 attempts) is dead-letter. Fix the cause, then:
UPDATE outbox SET status='pending', attempts=0, next_attempt_at=now() WHERE id=…;
- Do not delete rows that still need DNS.
- Duplicate upserts are expected.
Worker must reach BIND or nsupdate -g. See AD DDNS and BIND TSIG.