Skip to content

Commit

Permalink
Fixes unexpected max acquire-timeout (#5377)
Browse files Browse the repository at this point in the history
Important for applications where high pool contention is expected, and completion is favored over latency.

Co-authored-by: Matt <matt.goodson.business@gmail.com>
  • Loading branch information
MattGson and kiiwiz committed Nov 17, 2022
1 parent 5c4837c commit 4fc939a
Showing 1 changed file with 7 additions and 2 deletions.
9 changes: 7 additions & 2 deletions lib/client.js
Expand Up @@ -213,11 +213,16 @@ class Client extends EventEmitter {
}
});

const DEFAULT_ACQUIRE_TIMEOUT = 60000;
const timeouts = [
this.config.acquireConnectionTimeout || 60000,
poolConfig.acquireTimeoutMillis,
this.config.acquireConnectionTimeout,
poolConfig.acquireTimeoutMillis
].filter((timeout) => timeout !== undefined);

if (!timeouts.length) {
timeouts.push(DEFAULT_ACQUIRE_TIMEOUT)
}

// acquire connection timeout can be set on config or config.pool
// choose the smallest, positive timeout setting and set on poolConfig
poolConfig.acquireTimeoutMillis = Math.min(...timeouts);
Expand Down

0 comments on commit 4fc939a

Please sign in to comment.