From 236711c70267131deb372c3a42b7a0ab4a404653 Mon Sep 17 00:00:00 2001 From: Elias Djurfeldt Date: Wed, 5 Feb 2025 15:40:28 +0100 Subject: [PATCH 1/3] Try new fix --- src/connection.js | 3 +++ src/index.js | 7 ++++--- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/src/connection.js b/src/connection.js index 578a6a02..f01d7558 100644 --- a/src/connection.js +++ b/src/connection.js @@ -385,6 +385,9 @@ function Connection(options, queues = {}, { onopen = noop, onend = noop, onclose } function queryError(query, err) { + if (query === true) { + return; + } Object.defineProperties(err, { stack: { value: err.stack + query.origin.replace(/.*\n/, '\n'), enumerable: options.debug }, query: { value: query.string, enumerable: options.debug }, diff --git a/src/index.js b/src/index.js index 346ecdf9..c86ea944 100644 --- a/src/index.js +++ b/src/index.js @@ -217,9 +217,10 @@ function Postgres(a, b) { const queue = Queue() const c = open.length ? open.shift() - : await new Promise(r => { - queries.push({ reserve: r }) - closed.length && connect(closed.shift()) + : await new Promise((resolve, reject) => { + const q = { reserve: resolve, reject, origin: "reserve() call", statement: {} }; + queries.push(q); + closed.length && connect(closed.shift(), q); }) move(c, reserved) From a9ecddb7e228639b87dcf85ebf5dfc010870fdee Mon Sep 17 00:00:00 2001 From: Elias Djurfeldt Date: Wed, 5 Feb 2025 15:43:17 +0100 Subject: [PATCH 2/3] Formatting --- src/index.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/index.js b/src/index.js index c86ea944..2eecef51 100644 --- a/src/index.js +++ b/src/index.js @@ -218,9 +218,9 @@ function Postgres(a, b) { const c = open.length ? open.shift() : await new Promise((resolve, reject) => { - const q = { reserve: resolve, reject, origin: "reserve() call", statement: {} }; + const q = { reserve: resolve, reject, origin: 'reserve() call', statement: {} }; queries.push(q); - closed.length && connect(closed.shift(), q); + closed.length && connect(closed.shift(), q) }) move(c, reserved) From 8cc4d0a43a48aa631f8bfb5acd5a4b687b7f089b Mon Sep 17 00:00:00 2001 From: Elias Djurfeldt Date: Thu, 6 Feb 2025 09:02:11 +0100 Subject: [PATCH 3/3] New fixing attempt --- src/connection.js | 21 +++++++++++---------- src/index.js | 7 +++---- 2 files changed, 14 insertions(+), 14 deletions(-) diff --git a/src/connection.js b/src/connection.js index f01d7558..8f6d8036 100644 --- a/src/connection.js +++ b/src/connection.js @@ -385,17 +385,18 @@ function Connection(options, queues = {}, { onopen = noop, onend = noop, onclose } function queryError(query, err) { - if (query === true) { - return; + if (query instanceof Query) { + Object.defineProperties(err, { + stack: { value: err.stack + query.origin.replace(/.*\n/, '\n'), enumerable: options.debug }, + query: { value: query.string, enumerable: options.debug }, + parameters: { value: query.parameters, enumerable: options.debug }, + args: { value: query.args, enumerable: options.debug }, + types: { value: query.statement && query.statement.types, enumerable: options.debug } + }) + query.reject(err) + } else { + console.error(err) } - Object.defineProperties(err, { - stack: { value: err.stack + query.origin.replace(/.*\n/, '\n'), enumerable: options.debug }, - query: { value: query.string, enumerable: options.debug }, - parameters: { value: query.parameters, enumerable: options.debug }, - args: { value: query.args, enumerable: options.debug }, - types: { value: query.statement && query.statement.types, enumerable: options.debug } - }) - query.reject(err) } function end() { diff --git a/src/index.js b/src/index.js index 2eecef51..346ecdf9 100644 --- a/src/index.js +++ b/src/index.js @@ -217,10 +217,9 @@ function Postgres(a, b) { const queue = Queue() const c = open.length ? open.shift() - : await new Promise((resolve, reject) => { - const q = { reserve: resolve, reject, origin: 'reserve() call', statement: {} }; - queries.push(q); - closed.length && connect(closed.shift(), q) + : await new Promise(r => { + queries.push({ reserve: r }) + closed.length && connect(closed.shift()) }) move(c, reserved)