From 47623d7dd0b92328ba577f7cafb849f74a8f0b51 Mon Sep 17 00:00:00 2001 From: phoenix Date: Tue, 1 Apr 2025 20:45:06 -0400 Subject: [PATCH] db pooling settings --- src/lib.rs | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) diff --git a/src/lib.rs b/src/lib.rs index 0a095cc..c3c562c 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -2,17 +2,31 @@ pub mod callers; pub mod config; pub mod models; +mod keys { + pub const DBURL: &str = "DATABASE_URL"; + + pub mod error { + pub const ERROR: &str = "DATABASE_URL must be set in .env"; + } +} + +mod connection_settings { + pub const MAXCONN: u32 = 5; +} + pub mod db_pool { use sqlx::postgres::PgPoolOptions; use std::env; + use crate::{connection_settings, keys}; + pub async fn create_pool() -> Result { dotenv::dotenv().ok(); - let database_url = env::var("DATABASE_URL").expect("DATABASE_URL must be set in .env"); + let database_url = env::var(keys::DBURL).expect(keys::error::ERROR); PgPoolOptions::new() - .max_connections(10) + .max_connections(connection_settings::MAXCONN) .connect(&database_url) .await }