deterministic balance byAddress
This commit is contained in:
parent
0e215b730f
commit
f89c249e12
|
@ -1018,7 +1018,7 @@ WalletService.prototype._getBalanceFromAddresses = function(addresses, cb) {
|
||||||
|
|
||||||
// Compute balance by address
|
// Compute balance by address
|
||||||
var byAddress = {};
|
var byAddress = {};
|
||||||
_.each(_.indexBy(utxos, 'address'), function(value, key) {
|
_.each(_.indexBy(_.sortBy(utxos, 'address'), 'address'), function(value, key) {
|
||||||
byAddress[key] = {
|
byAddress[key] = {
|
||||||
address: key,
|
address: key,
|
||||||
path: value.path,
|
path: value.path,
|
||||||
|
@ -1121,7 +1121,6 @@ WalletService.prototype.getBalance = function(opts, cb) {
|
||||||
if (nbAddresses < Defaults.TWO_STEP_BALANCE_THRESHOLD) {
|
if (nbAddresses < Defaults.TWO_STEP_BALANCE_THRESHOLD) {
|
||||||
return self._getBalanceOneStep(opts, cb);
|
return self._getBalanceOneStep(opts, cb);
|
||||||
}
|
}
|
||||||
|
|
||||||
self._getActiveAddresses(function(err, activeAddresses) {
|
self._getActiveAddresses(function(err, activeAddresses) {
|
||||||
if (err) return cb(err);
|
if (err) return cb(err);
|
||||||
if (!_.isArray(activeAddresses)) {
|
if (!_.isArray(activeAddresses)) {
|
||||||
|
@ -1135,7 +1134,7 @@ WalletService.prototype.getBalance = function(opts, cb) {
|
||||||
self._getBalanceOneStep(opts, function(err, fullBalance) {
|
self._getBalanceOneStep(opts, function(err, fullBalance) {
|
||||||
if (err) return;
|
if (err) return;
|
||||||
if (!_.isEqual(partialBalance, fullBalance)) {
|
if (!_.isEqual(partialBalance, fullBalance)) {
|
||||||
log.debug('Cache miss: balance in active addresses differs from final balance');
|
log.info('Balance in active addresses differs from final balance');
|
||||||
self._notify('BalanceUpdated', fullBalance, {
|
self._notify('BalanceUpdated', fullBalance, {
|
||||||
isGlobal: true
|
isGlobal: true
|
||||||
});
|
});
|
||||||
|
|
Loading…
Reference in New Issue