Fixed tests.

This commit is contained in:
Chris Kleeschulte 2017-09-22 13:31:52 -04:00
parent ada997c8bd
commit a1db879fdc
No known key found for this signature in database
GPG Key ID: 33195D27EF6BDB7F
2 changed files with 25 additions and 19 deletions

View File

@ -537,21 +537,13 @@ BlockService.prototype._processBlock = function(block) {
function(err) { function(err) {
if (err) { if (err) {
if (!self.node.stopping) { return self._handleError(err);
log.error('Block Service: ' + err);
self.node.stop();
}
return;
} }
self._db.batch(operations, function(err) { self._db.batch(operations, function(err) {
if (err) { if (err) {
if (!self.node.stopping) { return self._handleError(err);
log.error('Block Service: ' + err);
self.node.stop();
}
return;
} }
self._tip.height = self._tip.height + 1; self._tip.height = self._tip.height + 1;
@ -561,14 +553,11 @@ BlockService.prototype._processBlock = function(block) {
self._db.put(tipOps.key, tipOps.value, function(err) { self._db.put(tipOps.key, tipOps.value, function(err) {
if (err) { if (err) {
if (!self.node.stopping) { return self._handleError(err);
log.error('Block Service: ' + err);
self.node.stop();
}
return;
} }
self._syncing = false; self._syncing = false;
self._reorging = false;
self._sync(); self._sync();
}); });
}); });
@ -576,6 +565,13 @@ BlockService.prototype._processBlock = function(block) {
); );
}; };
BlockService.prototype._handleError = function(err) {
if (!this.node.stopping) {
log.error('Block Service: ' + err);
return this.node.stop();
}
};
BlockService.prototype.onBlock = function(block, callback) { BlockService.prototype.onBlock = function(block, callback) {
var self = this; var self = this;
@ -616,12 +612,23 @@ BlockService.prototype._setListeners = function() {
BlockService.prototype.newReorg = function(block, headers, callback) { BlockService.prototype.newReorg = function(block, headers, callback) {
var self = this; var self = this;
self._reorging = true;
log.info('Block Service: detected a reorg from the header service.'); log.info('Block Service: detected a reorg from the header service.');
self._handleReorg(block.rhash(), headers, function(err) { self._handleReorg(block.rhash(), headers, function(err) {
if (err) { if (err) {
return callback(err); return callback(err);
} }
self.newBlock(block, callback); self.newBlock(block);
async.retry({ interval: 100, times: 1000 }, function(next) {
next(self._reorging);
}, function(err) {
if (err) {
return callback(err);
}
callback();
});
}); });
}; };

View File

@ -370,6 +370,8 @@ HeaderService.prototype._onHeader = function(header) {
} }
this._lastHeader = header; this._lastHeader = header;
this._tip.height = header.height;
this._tip.hash = header.hash;
return [ return [
{ {
@ -412,8 +414,6 @@ HeaderService.prototype._onHeaders = function(headers) {
dbOps = dbOps.concat(ops); dbOps = dbOps.concat(ops);
self._tip.height = header.height;
self._tip.hash = header.hash;
} }
self._saveHeaders(dbOps, function(err) { self._saveHeaders(dbOps, function(err) {
@ -800,7 +800,6 @@ HeaderService.prototype._handleLowTipHeight = function() {
} }
self._startHeaderSubscription(); self._startHeaderSubscription();
self._sync();
}); });