From 92d896c7294bfe6bbb4134e778161b21e774366c Mon Sep 17 00:00:00 2001 From: Christopher Jeffrey Date: Tue, 28 Feb 2017 17:18:54 -0800 Subject: [PATCH] mempool: refactor. --- lib/mempool/mempool.js | 23 +++++++++++------------ 1 file changed, 11 insertions(+), 12 deletions(-) diff --git a/lib/mempool/mempool.js b/lib/mempool/mempool.js index c71dfac2..aca29d3d 100644 --- a/lib/mempool/mempool.js +++ b/lib/mempool/mempool.js @@ -113,7 +113,7 @@ Mempool.prototype._open = co(function* open() { yield this.cache.open(); if (this.options.persistent) { - entries = yield this.cache.load(); + entries = yield this.cache.getEntries(); for (i = 0; i < entries.length; i++) { entry = entries[i]; @@ -125,6 +125,10 @@ Mempool.prototype._open = co(function* open() { this.updateAncestors(entry); } + this.logger.info( + 'Loaded mempool from disk (%d entries).', + entries.length); + if (this.fees) { fees = yield this.cache.getFees(); @@ -2371,6 +2375,7 @@ MempoolCache.prototype.open = co(function* open() { return; yield this.db.open(); + yield this.verify(); this.batch = this.db.batch(); }); @@ -2433,9 +2438,9 @@ MempoolCache.prototype.init = co(function* init(hash) { yield batch.write(); }); -MempoolCache.prototype.load = co(function* load() { +MempoolCache.prototype.verify = co(function* verify() { var version = yield this.getVersion(); - var tip, entries; + var tip; if (version === -1) { version = MempoolCache.VERSION; @@ -2455,7 +2460,7 @@ MempoolCache.prototype.load = co(function* load() { MempoolCache.VERSION); this.logger.warning('Invalidating mempool cache.'); yield this.wipe(); - return []; + return false; } tip = yield this.getTip(); @@ -2467,16 +2472,10 @@ MempoolCache.prototype.load = co(function* load() { this.chain.tip.rhash()); this.logger.warning('Invalidating mempool cache.'); yield this.wipe(); - return []; + return false; } - entries = yield this.getEntries(); - - this.logger.info( - 'Loaded mempool from disk (%d entries).', - entries.length); - - return entries; + return true; }); MempoolCache.prototype.wipe = co(function* wipe() {