fix: maintain connections pool (#8670)

This commit is contained in:
Harminder Virk authored and GitHub committed 2024-08-20 14:54:52 +05:30
1 parent eb0bfe9f33
commit 69830ca89c
4 files changed
+10 -2

No files matched your search

@@ -30,6 +30,9 @@ export function getMikroOrmConfig({
entities: Object.values(mikroOrmEntities), entities: Object.values(mikroOrmEntities),
schema: schema ?? process.env.MEDUSA_DB_SCHEMA, schema: schema ?? process.env.MEDUSA_DB_SCHEMA,
debug: false, debug: false,
pool: {
min: 2,
},
migrations: { migrations: {
pathTs: pathToMigrations, pathTs: pathToMigrations,
silent: true, silent: true,
@@ -93,6 +93,9 @@ export async function mikroOrmCreateConnection(
schemaGenerator: { schemaGenerator: {
disableForeignKeys: false, disableForeignKeys: false,
}, },
pool: database.pool as any, pool: {
min: 2,
...database.pool,
},
}) })
} }
@@ -27,7 +27,7 @@ export function createPgConnection(options: Options) {
pool: { pool: {
// https://knexjs.org/guide/#pool // https://knexjs.org/guide/#pool
...(pool ?? {}), ...(pool ?? {}),
min: (pool?.min as number) ?? 0, min: (pool?.min as number) ?? 2,
}, },
}) })
} }
@@ -23,6 +23,7 @@ export function pgConnectionLoader(): ReturnType<
configModule.projectConfig.databaseDriverOptions || {} configModule.projectConfig.databaseDriverOptions || {}
const schema = configModule.projectConfig.databaseSchema || "public" const schema = configModule.projectConfig.databaseSchema || "public"
const idleTimeoutMillis = driverOptions.pool?.idleTimeoutMillis ?? undefined // prevent null to be passed const idleTimeoutMillis = driverOptions.pool?.idleTimeoutMillis ?? undefined // prevent null to be passed
const poolMin = driverOptions.pool?.min ?? 2
const poolMax = driverOptions.pool?.max const poolMax = driverOptions.pool?.max
delete driverOptions.pool delete driverOptions.pool
@@ -32,6 +33,7 @@ export function pgConnectionLoader(): ReturnType<
schema, schema,
driverOptions, driverOptions,
pool: { pool: {
min: poolMin,
max: poolMax, max: poolMax,
idleTimeoutMillis, idleTimeoutMillis,
}, },