From 34f0d985da7dbd284fe4282f54d606ce933257d4 Mon Sep 17 00:00:00 2001 From: Micah Maphet Date: Fri, 8 May 2026 02:29:34 -0400 Subject: [PATCH 1/2] tear down rps on delay so that ethereum stops --- packages/bitcore-node/src/providers/chain-state/evm/p2p/p2p.ts | 1 + 1 file changed, 1 insertion(+) diff --git a/packages/bitcore-node/src/providers/chain-state/evm/p2p/p2p.ts b/packages/bitcore-node/src/providers/chain-state/evm/p2p/p2p.ts index c056baa06ee..489d22234d9 100644 --- a/packages/bitcore-node/src/providers/chain-state/evm/p2p/p2p.ts +++ b/packages/bitcore-node/src/providers/chain-state/evm/p2p/p2p.ts @@ -383,6 +383,7 @@ export class EVMP2pWorker extends BaseP2PWorker { this.multiThreadSync.stop(); logger.debug(`Stopping worker for chain ${this.chain} ${this.network}`); await this.disconnect(); + setTimeout(BaseEVMStateProvider.teardownRpcs, 100); } async start() { From f61e1a7cde7ed8514f5a0af65f9bc2c3fef776ea Mon Sep 17 00:00:00 2001 From: Micah Maphet Date: Sat, 16 May 2026 16:32:30 -0400 Subject: [PATCH 2/2] moved rpc teardown to workers --- packages/bitcore-node/src/providers/chain-state/evm/p2p/p2p.ts | 1 - packages/bitcore-node/src/workers/all.ts | 2 ++ packages/bitcore-node/src/workers/api.ts | 2 ++ packages/bitcore-node/src/workers/p2p.ts | 2 ++ 4 files changed, 6 insertions(+), 1 deletion(-) diff --git a/packages/bitcore-node/src/providers/chain-state/evm/p2p/p2p.ts b/packages/bitcore-node/src/providers/chain-state/evm/p2p/p2p.ts index 489d22234d9..c056baa06ee 100644 --- a/packages/bitcore-node/src/providers/chain-state/evm/p2p/p2p.ts +++ b/packages/bitcore-node/src/providers/chain-state/evm/p2p/p2p.ts @@ -383,7 +383,6 @@ export class EVMP2pWorker extends BaseP2PWorker { this.multiThreadSync.stop(); logger.debug(`Stopping worker for chain ${this.chain} ${this.network}`); await this.disconnect(); - setTimeout(BaseEVMStateProvider.teardownRpcs, 100); } async start() { diff --git a/packages/bitcore-node/src/workers/all.ts b/packages/bitcore-node/src/workers/all.ts index 6beead9cbe3..4f76d033f24 100644 --- a/packages/bitcore-node/src/workers/all.ts +++ b/packages/bitcore-node/src/workers/all.ts @@ -2,6 +2,7 @@ import cluster from 'cluster'; import 'source-map-support/register'; import logger from '../logger'; import { loadModules } from '../modules'; +import { BaseEVMStateProvider } from '../providers/chain-state/evm/api/csp'; import { Api } from '../services/api'; import { Event } from '../services/event'; import { P2P } from '../services/p2p'; @@ -58,6 +59,7 @@ const stop = async () => { for (const service of services.reverse()) { await service.stop(); } + BaseEVMStateProvider.teardownRpcs(); if (!cluster.isPrimary) { process.removeAllListeners(); diff --git a/packages/bitcore-node/src/workers/api.ts b/packages/bitcore-node/src/workers/api.ts index 5cff50c30e5..3f2120ec98e 100644 --- a/packages/bitcore-node/src/workers/api.ts +++ b/packages/bitcore-node/src/workers/api.ts @@ -2,6 +2,7 @@ import cluster from 'cluster'; import 'source-map-support/register'; import logger from '../logger'; import { loadModules } from '../modules'; +import { BaseEVMStateProvider } from '../providers/chain-state/evm/api/csp'; import { Api } from '../services/api'; import { Event } from '../services/event'; import { Storage } from '../services/storage'; @@ -56,6 +57,7 @@ const stop = async () => { for (const service of services.reverse()) { await service.stop(); } + BaseEVMStateProvider.teardownRpcs(); if (!cluster.isPrimary) { process.removeAllListeners(); diff --git a/packages/bitcore-node/src/workers/p2p.ts b/packages/bitcore-node/src/workers/p2p.ts index 2438a943b32..9f549d0d948 100644 --- a/packages/bitcore-node/src/workers/p2p.ts +++ b/packages/bitcore-node/src/workers/p2p.ts @@ -2,6 +2,7 @@ import cluster from 'cluster'; import 'source-map-support/register'; import logger from '../logger'; import { loadModules } from '../modules'; +import { BaseEVMStateProvider } from '../providers/chain-state/evm/api/csp'; import { Config } from '../services/config'; import { Event } from '../services/event'; import { P2P } from '../services/p2p'; @@ -64,6 +65,7 @@ const stop = async () => { for (const service of services.reverse()) { await service.stop(); } + BaseEVMStateProvider.teardownRpcs(); if (!cluster.isPrimary) { process.removeAllListeners();