llm_governance_database/
lib.rs1use sqlx::postgres::{PgPool, PgPoolOptions};
2use std::time::Duration;
3
4pub async fn create_pool(database_url: &str) -> Result<PgPool, sqlx::Error> {
5 PgPoolOptions::new()
6 .max_connections(50)
7 .min_connections(5)
8 .acquire_timeout(Duration::from_secs(30))
9 .idle_timeout(Duration::from_secs(600))
10 .connect(database_url)
11 .await
12}
13
14pub async fn run_migrations(pool: &PgPool) -> Result<(), sqlx::migrate::MigrateError> {
15 sqlx::migrate!("./migrations").run(pool).await
16}