From c234cc2891ebfaa415599f4540c32fa988030691 Mon Sep 17 00:00:00 2001
From: cgeek <cem.moreau@gmail.com>
Date: Tue, 29 Mar 2016 19:21:07 +0200
Subject: [PATCH] Fix: synchronization issues

---
 app/lib/entity/block.js          | 6 +++---
 app/service/BlockchainService.js | 8 ++------
 2 files changed, 5 insertions(+), 9 deletions(-)

diff --git a/app/lib/entity/block.js b/app/lib/entity/block.js
index 9670c8ebb..a8d847c4d 100644
--- a/app/lib/entity/block.js
+++ b/app/lib/entity/block.js
@@ -45,7 +45,8 @@ function Block(json) {
       "time",
       "medianTime",
       "membersCount",
-      "monetaryMass"
+      "monetaryMass",
+      "unitbase"
     ].forEach(function(field){
         json[field] = parseInt(that[field], 10);
       });
@@ -66,8 +67,7 @@ function Block(json) {
         json[field] = that[field] || null;
       });
     [
-      "dividend",
-      "unitbase"
+      "dividend"
     ].forEach(function(field){
         json[field] = parseInt(that[field]) || null;
       });
diff --git a/app/service/BlockchainService.js b/app/service/BlockchainService.js
index 3efc0ecc3..2b5253955 100644
--- a/app/service/BlockchainService.js
+++ b/app/service/BlockchainService.js
@@ -452,17 +452,13 @@ function BlockchainService () {
     };
     // Insert a bunch of blocks
     let lastPrevious = blocks[0].number == 0 ? null : yield dal.getBlock(blocks[0].number - 1);
-    let rootBlock = (blocks[0].number == 0 ? blocks[0] : null) || (yield dal.getBlockOrNull(0));
-    let rootConf = getParameters(rootBlock);
-    let maxBlock = getMaxBlocksToStoreAsFile(rootConf);
-    let lastBlockToSave = blocks[blocks.length - 1];
     for (let i = 0; i < blocks.length; i++) {
       let previous = i > 0 ? blocks[i - 1] : lastPrevious;
       let block = blocks[i];
       block.fork = false;
-      //console.log('Block #%s', block.number);
       // Monetary mass & UD Time recording before inserting elements
       block.monetaryMass = (previous && previous.monetaryMass) || 0;
+      block.unitbase = block.unitbase || 0;
       block.dividend = block.dividend || 0;
       // UD Time update
       let previousBlock = i > 0 ? blocks[i - 1] : lastPrevious;
@@ -493,7 +489,7 @@ function BlockchainService () {
     yield mainContext.updateCertificationsForBlocks(blocks);
     // Create / Update sources
     yield mainContext.updateTransactionSourcesForBlocks(blocks);
-    yield dal.blockDAL.saveBunch(blocks, (targetLastNumber - lastBlockToSave.number) > maxBlock);
+    yield dal.blockDAL.saveBunch(blocks);
     yield pushStatsForBlocks(blocks);
   });
 
-- 
GitLab