move blocks_behind into blockchain_status
This commit is contained in:
parent
c920663444
commit
62ab4c769d
2 changed files with 23 additions and 24 deletions
|
@ -1107,7 +1107,7 @@ class Daemon(AuthJSONRPCServer):
|
||||||
############################################################################
|
############################################################################
|
||||||
|
|
||||||
@defer.inlineCallbacks
|
@defer.inlineCallbacks
|
||||||
def jsonrpc_status(self, session_status=False, blockchain_status=False):
|
def jsonrpc_status(self, session_status=False):
|
||||||
"""
|
"""
|
||||||
Return daemon status
|
Return daemon status
|
||||||
|
|
||||||
|
@ -1118,6 +1118,10 @@ class Daemon(AuthJSONRPCServer):
|
||||||
daemon status
|
daemon status
|
||||||
"""
|
"""
|
||||||
has_wallet = self.session and self.session.wallet
|
has_wallet = self.session and self.session.wallet
|
||||||
|
local_height = self.session.wallet.network.get_local_height() if has_wallet else 0
|
||||||
|
remote_height = self.session.wallet.network.get_server_height() if has_wallet else 0
|
||||||
|
best_hash = (yield self.session.wallet.get_best_blockhash()) if has_wallet else None
|
||||||
|
|
||||||
response = {
|
response = {
|
||||||
'lbry_id': base58.b58encode(self.lbryid)[:SHORT_ID_LEN],
|
'lbry_id': base58.b58encode(self.lbryid)[:SHORT_ID_LEN],
|
||||||
'installation_id': conf.settings.get_installation_id()[:SHORT_ID_LEN],
|
'installation_id': conf.settings.get_installation_id()[:SHORT_ID_LEN],
|
||||||
|
@ -1135,11 +1139,12 @@ class Daemon(AuthJSONRPCServer):
|
||||||
else ''
|
else ''
|
||||||
),
|
),
|
||||||
},
|
},
|
||||||
'blocks_behind': (
|
'blocks_behind': remote_height - local_height, # deprecated. remove from UI, then here
|
||||||
self.session.wallet.blocks_behind
|
'blockchain_status': {
|
||||||
if has_wallet and self.wallet_type == LBRYUM_WALLET
|
'blocks': local_height,
|
||||||
else 'unknown'
|
'blocks_behind': remote_height - local_height,
|
||||||
),
|
'best_blockhash': best_hash,
|
||||||
|
}
|
||||||
}
|
}
|
||||||
if session_status:
|
if session_status:
|
||||||
blobs = yield self.session.blob_manager.get_all_verified_blobs()
|
blobs = yield self.session.blob_manager.get_all_verified_blobs()
|
||||||
|
@ -1147,22 +1152,14 @@ class Daemon(AuthJSONRPCServer):
|
||||||
'managed_blobs': len(blobs),
|
'managed_blobs': len(blobs),
|
||||||
'managed_streams': len(self.lbry_file_manager.lbry_files),
|
'managed_streams': len(self.lbry_file_manager.lbry_files),
|
||||||
}
|
}
|
||||||
if blockchain_status and has_wallet:
|
|
||||||
# calculate blocks_behind more accurately
|
|
||||||
local_height = self.session.wallet.network.get_local_height()
|
|
||||||
remote_height = self.session.wallet.network.get_server_height()
|
|
||||||
response['blocks_behind'] = remote_height - local_height
|
|
||||||
response['local_height'] = local_height
|
|
||||||
response['remote_height'] = remote_height
|
|
||||||
best_hash = yield self.session.wallet.get_best_blockhash()
|
|
||||||
response['blockchain_status'] = {'best_blockhash': best_hash}
|
|
||||||
defer.returnValue(response)
|
defer.returnValue(response)
|
||||||
|
|
||||||
def jsonrpc_get_best_blockhash(self):
|
def jsonrpc_get_best_blockhash(self):
|
||||||
"""
|
"""
|
||||||
DEPRECATED. Use `status blockchain_status=True` instead
|
DEPRECATED. Use `status blockchain_status=True` instead
|
||||||
"""
|
"""
|
||||||
d = self.jsonrpc_status(blockchain_status=True)
|
d = self.jsonrpc_status()
|
||||||
d.addCallback(lambda x: self._render_response(
|
d.addCallback(lambda x: self._render_response(
|
||||||
x['blockchain_status']['best_blockhash']))
|
x['blockchain_status']['best_blockhash']))
|
||||||
return d
|
return d
|
||||||
|
@ -1191,9 +1188,11 @@ class Daemon(AuthJSONRPCServer):
|
||||||
elif status['startup_status']['code'] == LOADING_WALLET_CODE:
|
elif status['startup_status']['code'] == LOADING_WALLET_CODE:
|
||||||
message = "Catching up with the blockchain."
|
message = "Catching up with the blockchain."
|
||||||
progress = 0
|
progress = 0
|
||||||
if status['blocks_behind'] > 0:
|
if status['blockchain_status']['blocks_behind'] > 0:
|
||||||
message += ' ' + str(status['blocks_behind']) + " blocks behind."
|
message += (
|
||||||
progress = status['blocks_behind']
|
' ' + str(status['blockchain_status']['blocks_behind']) + " blocks behind."
|
||||||
|
)
|
||||||
|
progress = status['blockchain_status']['blocks_behind']
|
||||||
|
|
||||||
return {
|
return {
|
||||||
'message': message,
|
'message': message,
|
||||||
|
@ -1212,7 +1211,7 @@ class Daemon(AuthJSONRPCServer):
|
||||||
"""
|
"""
|
||||||
DEPRECATED. Use `status` instead
|
DEPRECATED. Use `status` instead
|
||||||
"""
|
"""
|
||||||
d = self.jsonrpc_status(blockchain_status=True)
|
d = self.jsonrpc_status()
|
||||||
d.addCallback(lambda x: self._render_response(x['is_first_run']))
|
d.addCallback(lambda x: self._render_response(x['is_first_run']))
|
||||||
return d
|
return d
|
||||||
|
|
||||||
|
@ -1233,8 +1232,8 @@ class Daemon(AuthJSONRPCServer):
|
||||||
"""
|
"""
|
||||||
DEPRECATED. Use `status` instead
|
DEPRECATED. Use `status` instead
|
||||||
"""
|
"""
|
||||||
d = self.jsonrpc_status(blockchain_status=True)
|
d = self.jsonrpc_status()
|
||||||
d.addCallback(lambda x: self._render_response(x['blocks_behind']))
|
d.addCallback(lambda x: self._render_response(x['blockchain_status']['blocks_behind']))
|
||||||
return d
|
return d
|
||||||
|
|
||||||
def jsonrpc_version(self):
|
def jsonrpc_version(self):
|
||||||
|
|
|
@ -35,9 +35,9 @@ def main():
|
||||||
if message:
|
if message:
|
||||||
if (
|
if (
|
||||||
status['startup_status']['code'] == LOADING_WALLET_CODE
|
status['startup_status']['code'] == LOADING_WALLET_CODE
|
||||||
and status['blocks_behind'] > 0
|
and status['blockchain_status']['blocks_behind'] > 0
|
||||||
):
|
):
|
||||||
message += '. Blocks left: ' + str(status['blocks_behind'])
|
message += '. Blocks left: ' + str(status['blockchain_status']['blocks_behind'])
|
||||||
print " Status: " + message
|
print " Status: " + message
|
||||||
return 1
|
return 1
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue