From b054390eefdb5e9a58cbee1e8987ea83a1c53eb7 Mon Sep 17 00:00:00 2001 From: Cursor Agent Date: Sat, 7 Nov 2026 16:49:58 +0000 Subject: [PATCH] chore: set an explicit Prisma pool_timeout on DATABASE_URL Surface MAIN_DB_POOL_TIMEOUT (20s) in the connection string so pool checkout waits are intentional and adjustable, instead of relying on Prisma's implicit 10s default. Co-authored-by: David --- .env | 6 ++++-- .env.test | 6 ++++-- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/.env b/.env index af3d56868..9fd8f3413 100644 --- a/.env +++ b/.env @@ -5,12 +5,14 @@ MAIN_DB_USER='paybutton-user' MAIN_DB_HOST='db' MAIN_DB_PORT='3306' MAIN_DB_CONNECTION_LIMIT='50' +# Seconds to wait for a free Prisma pool connection before failing (Prisma default is 10). +MAIN_DB_POOL_TIMEOUT='20' SUPERTOKENS_DB_USER='st-user' SUPERTOKENS_DB_PASSWORD='st-password' -DATABASE_URL="mysql://$MAIN_DB_USER:$MAIN_DB_PASSWORD@$MAIN_DB_HOST:$MAIN_DB_PORT/$MAIN_DB_NAME?charset=utf8mb4&connection_limit=$MAIN_DB_CONNECTION_LIMIT" -SHADOW_DATABASE_URL="mysql://$MAIN_DB_USER:$MAIN_DB_PASSWORD@$MAIN_DB_HOST:$MAIN_DB_PORT/prisma-shadow-db?charset=utf8mb4&connection_limit=$MAIN_DB_CONNECTION_LIMIT" +DATABASE_URL="mysql://$MAIN_DB_USER:$MAIN_DB_PASSWORD@$MAIN_DB_HOST:$MAIN_DB_PORT/$MAIN_DB_NAME?charset=utf8mb4&connection_limit=$MAIN_DB_CONNECTION_LIMIT&pool_timeout=$MAIN_DB_POOL_TIMEOUT" +SHADOW_DATABASE_URL="mysql://$MAIN_DB_USER:$MAIN_DB_PASSWORD@$MAIN_DB_HOST:$MAIN_DB_PORT/prisma-shadow-db?charset=utf8mb4&connection_limit=$MAIN_DB_CONNECTION_LIMIT&pool_timeout=$MAIN_DB_POOL_TIMEOUT" ### These must be set in .env.local: diff --git a/.env.test b/.env.test index 188e118b7..33346f61c 100644 --- a/.env.test +++ b/.env.test @@ -13,5 +13,7 @@ MAIN_DB_PORT=3306 SUPERTOKENS_DB_USER=st-user SUPERTOKENS_DB_PASSWORD=st-password -DATABASE_URL="mysql://${MAIN_DB_USER}:${MAIN_DB_PASSWORD}@${MAIN_DB_HOST}:${MAIN_DB_PORT}/${MAIN_DB_NAME}?charset=utf8mb4" -SHADOW_DATABASE_URL="mysql://${MAIN_DB_USER}:${MAIN_DB_PASSWORD}@${MAIN_DB_HOST}:${MAIN_DB_PORT}/prisma-shadow-db?charset=utf8mb4" +MAIN_DB_CONNECTION_LIMIT='10' +MAIN_DB_POOL_TIMEOUT='20' +DATABASE_URL="mysql://${MAIN_DB_USER}:${MAIN_DB_PASSWORD}@${MAIN_DB_HOST}:${MAIN_DB_PORT}/${MAIN_DB_NAME}?charset=utf8mb4&connection_limit=${MAIN_DB_CONNECTION_LIMIT}&pool_timeout=${MAIN_DB_POOL_TIMEOUT}" +SHADOW_DATABASE_URL="mysql://${MAIN_DB_USER}:${MAIN_DB_PASSWORD}@${MAIN_DB_HOST}:${MAIN_DB_PORT}/prisma-shadow-db?charset=utf8mb4&connection_limit=${MAIN_DB_CONNECTION_LIMIT}&pool_timeout=${MAIN_DB_POOL_TIMEOUT}"