Files
caravel/backend/spec/pool.md
T
Jon Staab b4af2f3866
Docker / build-and-push-image (backend, backend, coracle/caravel-backend) (push) Failing after 0s
Docker / build-and-push-image (frontend, frontend, coracle/caravel-frontend) (push) Failing after 0s
Update spec and readme
2026-05-22 10:15:52 -07:00

623 B

pub async fn create_pool(database_url: &str) -> Result<SqlitePool>

Creates and returns a sqlite connection pool.

Notes:

  • Database table names are singular: activity, tenant, relay, lightning_invoice

Steps:

  • Normalizes database_url: a relative sqlite:// path is resolved under the crate manifest directory (CARGO_MANIFEST_DIR); absolute paths and :memory: are left as-is
  • Ensures any directory referred to in the (normalized) URL exists
  • Opens the pool with create_if_missing enabled
  • Enables WAL journaling (PRAGMA journal_mode = WAL)
  • Runs migrations found in the migrations directory