From 690d2542d48cca4a35b5d51ae2020de6996a8663 Mon Sep 17 00:00:00 2001 From: Rafael Cardenas Date: Wed, 5 Feb 2025 13:47:35 -0600 Subject: [PATCH] fix: use an independent sql connection for mempool stats --- src/datastore/pg-write-store.ts | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/src/datastore/pg-write-store.ts b/src/datastore/pg-write-store.ts index 5a2c4b3da..b80ecf10b 100644 --- a/src/datastore/pg-write-store.ts +++ b/src/datastore/pg-write-store.ts @@ -2034,8 +2034,13 @@ export class PgWriteStore extends PgStore { this._debounceMempoolStat.debounce = setTimeout(async () => { this._debounceMempoolStat.running = true; this._debounceMempoolStat.triggeredAt = null; + const sql = await connectPostgres({ + usageName: `mempool-debounce`, + connectionArgs: getConnectionArgs(PgServer.primary), + connectionConfig: getConnectionConfig(PgServer.primary), + }); try { - const mempoolStats = await this.sqlTransaction(async sql => { + const mempoolStats = await sql.begin(async sql => { return await this.getMempoolStatsInternal({ sql }); }); this.eventEmitter.emit('mempoolStatsUpdate', mempoolStats); @@ -2052,6 +2057,7 @@ export class PgWriteStore extends PgStore { logger.error(e, `failed to run mempool stats update`); } } finally { + await sql.end(); this._debounceMempoolStat.running = false; this._debounceMempoolStat.debounce = null; if (this._debounceMempoolStat.triggeredAt != null) {