attempt to use tx block caching again.
This commit is contained in:
parent
3cbc54bcde
commit
d37be97ad9
|
@ -394,29 +394,22 @@ Bitcoin.prototype.getTx = function(txHash, blockHash, callback) {
|
|||
blockHash = '';
|
||||
}
|
||||
}
|
||||
return bitcoinjs.getTransaction(txHash, blockHash, function(err, tx) {
|
||||
if (err) return callback(err);
|
||||
bitcoin.db.set('tx-block/' + txHash, { hash: tx.blockhash }, utils.NOOP);
|
||||
return callback(null, bitcoin.tx(tx));
|
||||
});
|
||||
if (blockHash && typeof blockHash === 'string') {
|
||||
return bitcoindjs.getTransaction(txHash, blockHash, function(err, tx) {
|
||||
if (err) return callback(err);
|
||||
bitcoin.db.set('tx-block/' + txHash, { hash: blockHash }, utils.NOOP);
|
||||
bitcoin.db.set('tx-block/' + txHash,
|
||||
{ hash: blockHash }, utils.NOOP);
|
||||
return callback(null, bitcoin.tx(tx));
|
||||
});
|
||||
}
|
||||
return bitcoin.db.get('tx-block/' + txHash, function(err, block) {
|
||||
if (block) {
|
||||
return bitcoinjs.getTransaction(txHash, block.hash, function(err, tx) {
|
||||
if (err) return callback(err);
|
||||
return callback(null, bitcoin.tx(tx));
|
||||
});
|
||||
}
|
||||
// Will traverse blockchain - slow:
|
||||
return bitcoinjs.getTransaction(txHash, blockHash, function(err, tx) {
|
||||
// Will traverse blockchain if no block - slow:
|
||||
return bitcoinjs.getTransaction(txHash, block ? block.hash : '', function(err, tx) {
|
||||
if (err) return callback(err);
|
||||
bitcoin.db.set('tx-block/' + txHash, { hash: tx.blockhash }, utils.NOOP);
|
||||
if (!block) {
|
||||
bitcoin.db.set('tx-block/' + txHash,
|
||||
{ hash: tx.blockhash }, utils.NOOP);
|
||||
}
|
||||
return callback(null, bitcoin.tx(tx));
|
||||
});
|
||||
});
|
||||
|
|
Loading…
Reference in New Issue