diff --git a/lib/services/bitcoind.js b/lib/services/bitcoind.js index 6316573b..ab8e3de5 100644 --- a/lib/services/bitcoind.js +++ b/lib/services/bitcoind.js @@ -1211,6 +1211,7 @@ Bitcoin.prototype.getAddressTxids = function(addressArg, options, callback) { /* jshint maxstatements: 16 */ var self = this; var queryMempool = _.isUndefined(options.queryMempool) ? true : options.queryMempool; + var queryMempoolOnly = _.isUndefined(options.queryMempoolOnly) ? false : options.queryMempoolOnly; var rangeQuery = false; try { rangeQuery = self._getHeightRangeQuery(options); @@ -1220,12 +1221,21 @@ Bitcoin.prototype.getAddressTxids = function(addressArg, options, callback) { if (rangeQuery) { queryMempool = false; } + if (queryMempoolOnly) { + queryMempool = true; + rangeQuery = false; + } var addresses = self._normalizeAddressArg(addressArg); var cacheKey = addresses.join(''); var mempoolTxids = []; - var txids = self.txidsCache.get(cacheKey); + var txids = queryMempoolOnly ? false : self.txidsCache.get(cacheKey); function finish() { + if (queryMempoolOnly) { + return setImmediate(function() { + callback(null, mempoolTxids.reverse()); + }); + } if (txids && !rangeQuery) { var allTxids = mempoolTxids.reverse().concat(txids); return setImmediate(function() {