small fixes to mempool.

This commit is contained in:
Chris Kleeschulte 2017-02-01 18:35:22 -05:00
parent c73d5bde2e
commit 9a9f43bc7f
2 changed files with 16 additions and 13 deletions

View File

@ -1,8 +1,12 @@
'use strict';
var BaseService = require('../Service');
var BaseService = require('../service');
var util = require('util');
var EventEmitter = require('events').EventEmitter;
var bitcore = require('bitcore-lib');
var Encoding = require('../encoding');
var index = require('../index');
var log = index.log;
var async = require('async');
var MempoolService = function(options) {
EventEmitter.call(this);
@ -10,7 +14,7 @@ var MempoolService = function(options) {
this.name = options.name;
this._txIndex = {};
this._addressIndex = {};
this.store = this.nodes.services.db.store;
this.store = this.node.services.db.store;
this._handleBlocks = false;
};
@ -35,7 +39,6 @@ MempoolService.prototype.blockHandler = function(block, connectBlock, callback)
action = 'put';
}
var transactionLength = txs.length;
for(var i = 0; i < txs.length; i++) {
var tx = txs[i];
@ -95,6 +98,10 @@ MempoolService.prototype.getRoutePrefix = function() {
MempoolService.prototype._getTransactionAddressDetailOperations = function(tx, action) {
var self = this;
if(tx.isCoinbase()) {
return [];
}
var operations = [];
var txid = tx.id;
@ -112,7 +119,7 @@ MempoolService.prototype._getTransactionAddressDetailOperations = function(tx, a
continue;
}
var address = self..getAddressString(script);
var address = self.getAddressString(script);
if(!address) {
continue;
@ -126,22 +133,19 @@ MempoolService.prototype._getTransactionAddressDetailOperations = function(tx, a
}
if(tx.isCoinbase()) {
continue;
}
//TODO deal with P2PK
async.eachLimit(inputs, 10, function(input, next) {
for(var i = 0; i < inputs.length; i++) {
var input = inputs[i];
if(!input.script) {
log.debug('Invalid script');
return next();
continue;
}
var inputAddress = self.getAddressString(input.script);
if(!inputAddress) {
return next();
continue;
}
var inputKey = self.encodeMempoolAddressIndexKey(inputAddress, txid);
@ -150,7 +154,6 @@ MempoolService.prototype._getTransactionAddressDetailOperations = function(tx, a
type: action,
key: inputKey
});
}
return operations;
};
@ -289,6 +292,7 @@ MempoolService.prototype.getTransactionsByAddress = function(address, callback)
};
MempoolService.prototype.getTransactionsByAddresses = function(addresses, callback) {
var self = this;
var transactions = {};
async.eachLimit(addresses, 10, function(address, next) {
self.getTransactionsByAddress(address, function(err, txs) {

View File

@ -75,7 +75,6 @@ TransactionService.prototype.blockHandler = function(block, connectBlock, callba
});
}, function(next) {
async.eachSeries(block.transactions, function(tx, next) {
self._updateMempool(tx, reverseAction);
tx.__timestamp = block.__timestamp;
tx.__height = block.__height;