diff --git a/packages/pg-pool/index.js b/packages/pg-pool/index.js index ad48a80be..c4e9b36aa 100644 --- a/packages/pg-pool/index.js +++ b/packages/pg-pool/index.js @@ -356,8 +356,7 @@ class Pool extends EventEmitter { if (isExpired) { this.log('remove expired client') this._expired.delete(client) - this._remove(client, this._pulseQueue.bind(this)) - return + return this._remove(client, this._pulseQueue.bind(this)) } // idle timeout @@ -365,7 +364,7 @@ class Pool extends EventEmitter { if (this.options.idleTimeoutMillis) { tid = setTimeout(() => { this.log('remove idle client') - this._remove(client) + this._remove(client, this._pulseQueue.bind(this)) }, this.options.idleTimeoutMillis) if (this.options.allowExitOnIdle) { diff --git a/packages/pg-pool/test/idle-timeout.js b/packages/pg-pool/test/idle-timeout.js index 13514bdb6..588cf9bd4 100644 --- a/packages/pg-pool/test/idle-timeout.js +++ b/packages/pg-pool/test/idle-timeout.js @@ -50,7 +50,7 @@ describe('idle timeout', () => { try { yield Promise.race([removal, timeout]) } finally { - pool.end() + yield pool.end() } }) )