Citus
Citus distributes PostgreSQL across nodes while staying wire-compatible. DBLift treats it as PostgreSQL with its own identity, recorded through type: citus.
type
citus
Driver
psycopg
DDL
Transactional
Config class
PostgreSQL
Install
pip install "dblift[citus]"Connection URL
postgresql+psycopg://user:password@coordinator.internal:5432/appConnect to the coordinator. A plain postgresql:// URL works — DBLift adds the psycopg driver.
dblift.yaml
database:
type: citus
url: "postgresql+psycopg://db.internal:5432/app"
schema: "public"
ssl_mode: "require"
migrations:
directory: "./migrations"Engine settings
KeyDefaultEffect
schemapublicSets the connection's search_path, so unqualified objects land here.ssl_mode—Passed through as PostgreSQL's sslmode: require, verify-ca, verify-full.connection_timeout30Seconds to wait for a connection, sent as connect_timeout.extra_params{}Any other libpq parameter, appended to the connection URL.Behaviour notes
No declared differences from PostgreSQL.
Capabilities come from the PostgreSQL provider.
The PostgreSQL page is the reference.
migrate runs your SQL unchanged. Pro diff and export-schema can emit Citus distribution DDL (create_distributed_table / create_reference_table).