dbos-inc/dbos-transact-py

Database-Backed Durable Python Workflows

What it solves

DBOS Transact simplifies the creation of reliable, fault-tolerant applications by eliminating the need for complex state management, external task queues, or heavyweight orchestration servers. It allows developers to ensure that long-running processes—such as payment transactions, data pipelines, or AI agent operations—can resume exactly where they left off after a server crash or API failure, rather than restarting from the beginning.

How it works

DBOS is a lightweight Python library that uses a Postgres database to checkpoint the state of a program. By annotating ordinary functions as @DBOS.workflow() and @DBOS.step(), the library automatically records progress in Postgres. If a failure occurs, DBOS uses these checkpoints to automatically recover and resume the workflow from the last completed step.

Who it’s for

It is designed for developers building applications that must reliably handle failures, specifically those already using Postgres or those who want to avoid the infrastructure overhead of dedicated orchestrators like Temporal or Airflow.

Highlights

  • Durable Workflows: Automatically checkpoints state to resume execution after crashes.
  • Durable Queues: Postgres-backed background task management with flow control, rate limiting, and deduplication.
  • Programmatic Management: Workflows are stored as Postgres rows, allowing developers to query, pause, resume, or fork failed executions via a client.
  • Exactly-Once Processing: Built-in support for idempotency keys to ensure events (like webhooks or Kafka messages) are processed exactly once.
  • Durable Scheduling: Supports cron-style scheduling and long-term durable sleeps (days or weeks) that survive restarts.

Related

  • Project
  • Project
  • Project
  • Project
  • Project