Default Behavior
- LangGraph adapter uses memory checkpointing by default.
- If
POSTGRES_URLis configured and database initialization succeeds, the adapter can use PostgreSQL-backed checkpointing. - During plugin initialization, checkpointer tables are set up when needed.
Operational Guidance
- Use memory checkpointing for local development and simple test flows.
- Use PostgreSQL checkpointing for durable state across restarts and distributed deployments.
- Validate database connectivity before starting production workloads.
PostgreSQL Setup
Underaion serve the adapter attaches the checkpointer itself, and
[langgraph-server] covers Postgres checkpointing. Point it at a database and
it switches backends:
POSTGRES_URL the checkpointer is in-memory. With it set, the
checkpointer is PostgreSQL: if the database cannot be reached or the
checkpointer fails to initialize, startup fails with an error. The startup logs
name the backend it chose. Several servers of one agent need the PostgreSQL
checkpointer: the next turn of a thread may run on any of them - see
Multiple instances.
Return the graph uncompiled — a StateGraph, or a callable that returns one.
Aion compiles it and attaches the checkpointer for you. A graph that arrives
already compiled is used as it is, and keeps whichever checkpointer it was
compiled with, so POSTGRES_URL has no effect on it.