From 176f5e137706dcdc51a9f206b8bd710a03a7307b Mon Sep 17 00:00:00 2001 From: softsimon Date: Fri, 16 Jun 2023 20:42:31 +0200 Subject: [PATCH] Reinstate the mempool loop time limit --- backend/src/api/mempool.ts | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/backend/src/api/mempool.ts b/backend/src/api/mempool.ts index e3543f4fc..70635237f 100644 --- a/backend/src/api/mempool.ts +++ b/backend/src/api/mempool.ts @@ -186,6 +186,12 @@ class Mempool { loadingIndicators.setProgress('mempool', progress); loggerTimer = new Date().getTime() / 1000; } + // Break and restart mempool loop if we spend too much time processing + // new transactions that may lead to falling behind on block height + if (this.inSync && (new Date().getTime()) - start > 10_000) { + logger.debug('Breaking mempool loop because the 10s time limit exceeded.'); + break; + } } // Reset esplora 404 counter and log a warning if needed