Merge pull request #3906 from mempool/simon/mempool-break-limit
Lowering mempool loop break limit
This commit is contained in:
commit
4cd7561af8
@ -156,7 +156,7 @@ class Mempool {
|
|||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
let loggerTimer = new Date().getTime() / 1000;
|
let intervalTimer = Date.now();
|
||||||
for (const txid of transactions) {
|
for (const txid of transactions) {
|
||||||
if (!this.mempoolCache[txid]) {
|
if (!this.mempoolCache[txid]) {
|
||||||
try {
|
try {
|
||||||
@ -179,18 +179,20 @@ class Mempool {
|
|||||||
logger.debug(`Error finding transaction '${txid}' in the mempool: ` + (e instanceof Error ? e.message : e));
|
logger.debug(`Error finding transaction '${txid}' in the mempool: ` + (e instanceof Error ? e.message : e));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
const elapsedSeconds = Math.round((new Date().getTime() / 1000) - loggerTimer);
|
|
||||||
if (elapsedSeconds > 4) {
|
if (Date.now() - intervalTimer > 5_000) {
|
||||||
|
|
||||||
|
if (this.inSync) {
|
||||||
|
// Break and restart mempool loop if we spend too much time processing
|
||||||
|
// new transactions that may lead to falling behind on block height
|
||||||
|
logger.debug('Breaking mempool loop because the 5s time limit exceeded.');
|
||||||
|
break;
|
||||||
|
} else {
|
||||||
const progress = (currentMempoolSize + newTransactions.length) / transactions.length * 100;
|
const progress = (currentMempoolSize + newTransactions.length) / transactions.length * 100;
|
||||||
logger.debug(`Mempool is synchronizing. Processed ${newTransactions.length}/${diff} txs (${Math.round(progress)}%)`);
|
logger.debug(`Mempool is synchronizing. Processed ${newTransactions.length}/${diff} txs (${Math.round(progress)}%)`);
|
||||||
loadingIndicators.setProgress('mempool', progress);
|
loadingIndicators.setProgress('mempool', progress);
|
||||||
loggerTimer = new Date().getTime() / 1000;
|
intervalTimer = Date.now()
|
||||||
}
|
}
|
||||||
// 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;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user