diff --git a/services/blockchain-connector/shared/sdk/client.js b/services/blockchain-connector/shared/sdk/client.js index ff56665441..80589739d3 100644 --- a/services/blockchain-connector/shared/sdk/client.js +++ b/services/blockchain-connector/shared/sdk/client.js @@ -76,9 +76,9 @@ const pingListener = apiClient => { clearTimeout(apiClient.pingTimeout); apiClient.pingTimeout = setTimeout(() => { - // Do not reset if the ping was delayed and just received - const timeSinceLastPing = now - apiClient.lastPingAt; - if (timeSinceLastPing) { + // Inside this callback, `now` refers to the time when the previous ping was received and this instance of timeout was set + const timeSinceLastPing = Date.now() - now; + if (timeSinceLastPing - WS_SERVER_PING_THRESHOLD > 0) { logger.warn( `No ping for client ${apiClient.poolIndex} from server in ${timeSinceLastPing}ms (last ping: ${apiClient.lastPingAt}).`, );