From 120947fe4239a90b2856910070b12a47c5e52786 Mon Sep 17 00:00:00 2001 From: joeuhren <46763106+joeuhren@users.noreply.github.com> Date: Tue, 8 Dec 2020 20:49:06 -0700 Subject: [PATCH] Add new setting to determine how many blocks to sync before saving stats --- app.js | 1 + lib/database.js | 2 +- lib/settings.js | 1 + settings.json.template | 3 +++ 4 files changed, 6 insertions(+), 1 deletion(-) diff --git a/app.js b/app.js index fc51ec7..d8df4db 100644 --- a/app.js +++ b/app.js @@ -306,6 +306,7 @@ app.set('genesis_block', settings.genesis_block); app.set('index', settings.index); app.set('use_rpc', settings.use_rpc); app.set('heavy', settings.heavy); +app.set('save_stats_after_sync_blocks', settings.save_stats_after_sync_blocks); app.set('lock_during_index', settings.lock_during_index); app.set('txcount', settings.txcount); app.set('txcount_per_page', settings.txcount_per_page); diff --git a/lib/database.js b/lib/database.js index 8395ee1..ed67224 100644 --- a/lib/database.js +++ b/lib/database.js @@ -808,7 +808,7 @@ module.exports = { blocks_to_scan.push(i); } async.eachLimit(blocks_to_scan, task_limit_blocks, function(block_height, next_block) { - if (block_height % 5000 === 0) { + if (block_height % settings.save_stats_after_sync_blocks === 0) { Stats.updateOne({coin: coin}, { last: block_height - 1, txes: txes, diff --git a/lib/settings.js b/lib/settings.js index e49957d..96d0c70 100644 --- a/lib/settings.js +++ b/lib/settings.js @@ -159,6 +159,7 @@ exports.genesis_block = "0000860fcf946b44df0e7d85d6757d45f8de6f4c9aacc5c7b6abc13 exports.use_rpc = true; exports.heavy = false; +exports.save_stats_after_sync_blocks = 100; exports.lock_during_index = false; exports.txcount = 100; exports.txcount_per_page = 50; diff --git a/settings.json.template b/settings.json.template index 978d09e..51494c5 100644 --- a/settings.json.template +++ b/settings.json.template @@ -180,6 +180,9 @@ //heavy (enable/disable additional heavy features) "heavy": false, + + //during index syncronization, stats are saved updated after processing this many blocks to save time + "save_stats_after_sync_blocks": 100, //disable saving blocks & TXs via API during indexing. "lock_during_index": false,