Python Absurd Client Documentation

About Absurd

Absurd is a SQL-based durable execution workflow system that uses PostgreSQL as the backend. This Python client provides a convenient interface to interact with Absurd’s PostgreSQL-based task queue and workflow engine.

Key Features

  • Task queuing and processing

  • Durable task execution that survives crashes

  • Event-driven workflow coordination

  • Checkpoint-based state management

  • Retry strategies and failure handling

  • Workflow run tracking

  • Support for complex workflow patterns

  • Multi-tenant support (Phase 13)

  • Connection pooling for production environments

  • Comprehensive error handling

Getting Started

If you’re new to the Absurd client, start with the Installation guide to set up your environment, then follow the Quick Start to learn the basics.

For advanced use cases and complex workflows, check out the Usage Examples section which provides comprehensive code samples for various scenarios.

Core Concepts

  • Queues: Isolated task processing environments that separate different types of work

  • Tasks: Logical units of work that need to be executed

  • Runs: Individual execution attempts of a task

  • Events: Coordination signals between tasks and workflows

  • Checkpoints: Persistent state saved during long-running operations

  • Workflows: Orchestrated sequences of related tasks

Architecture

The Absurd client provides a Python interface to PostgreSQL-stored procedures that manage:

  • Task queueing and execution scheduling

  • Worker claim management with configurable timeouts

  • Event-driven coordination between tasks

  • State persistence and checkpoint management

  • Retry logic with configurable backoff strategies

  • Workflow execution tracking across multiple tasks

Indices and tables