From e91e8e9c55c0c1b2541b9109ee373f5537ff682c Mon Sep 17 00:00:00 2001 From: Patrik Oldsberg Date: Wed, 21 Sep 2022 23:17:24 +0200 Subject: [PATCH] backend-test-utils: increase max connection pool size Signed-off-by: Patrik Oldsberg --- .changeset/stupid-dragons-complain.md | 5 +++++ .../backend-test-utils/src/database/TestDatabases.ts | 12 ++++++++++++ 2 files changed, 17 insertions(+) create mode 100644 .changeset/stupid-dragons-complain.md diff --git a/.changeset/stupid-dragons-complain.md b/.changeset/stupid-dragons-complain.md new file mode 100644 index 0000000000..44be8342bf --- /dev/null +++ b/.changeset/stupid-dragons-complain.md @@ -0,0 +1,5 @@ +--- +'@backstage/backend-test-utils': patch +--- + +Increased test database max connection pool size to reduce the risk of resource exhaustion. diff --git a/packages/backend-test-utils/src/database/TestDatabases.ts b/packages/backend-test-utils/src/database/TestDatabases.ts index 76d12ce8f1..6ff1a2e6f7 100644 --- a/packages/backend-test-utils/src/database/TestDatabases.ts +++ b/packages/backend-test-utils/src/database/TestDatabases.ts @@ -28,6 +28,13 @@ import { TestDatabaseProperties, } from './types'; +const LARGER_POOL_CONFIG = { + pool: { + min: 0, + max: 50, + }, +}; + /** * Encapsulates the creation of ephemeral test database instances for use * inside unit or integration tests. @@ -164,6 +171,9 @@ export class TestDatabases { new ConfigReader({ backend: { database: { + knexConfig: properties.driver.includes('sqlite') + ? {} + : LARGER_POOL_CONFIG, client: properties.driver, connection: connectionString, }, @@ -203,6 +213,7 @@ export class TestDatabases { new ConfigReader({ backend: { database: { + knexConfig: LARGER_POOL_CONFIG, client: 'pg', connection: { host, port, user, password }, }, @@ -228,6 +239,7 @@ export class TestDatabases { new ConfigReader({ backend: { database: { + knexConfig: LARGER_POOL_CONFIG, client: 'mysql2', connection: { host, port, user, password }, },