mirror of
https://codeberg.org/anoncontributorxmr/monero.git
synced 2024-12-23 13:47:47 +00:00
rpc: add a busy_syncing field to get_info
true if and pretty much only if new blocks are being added
This commit is contained in:
parent
e5decd0cde
commit
5a1ac9c0ef
4 changed files with 13 additions and 1 deletions
|
@ -117,6 +117,8 @@ namespace cryptonote
|
||||||
std::string get_peers_overview() const;
|
std::string get_peers_overview() const;
|
||||||
std::pair<uint32_t, uint32_t> get_next_needed_pruning_stripe() const;
|
std::pair<uint32_t, uint32_t> get_next_needed_pruning_stripe() const;
|
||||||
bool needs_new_sync_connections() const;
|
bool needs_new_sync_connections() const;
|
||||||
|
bool is_busy_syncing();
|
||||||
|
|
||||||
private:
|
private:
|
||||||
//----------------- commands handlers ----------------------------------------------
|
//----------------- commands handlers ----------------------------------------------
|
||||||
int handle_notify_new_block(int command, NOTIFY_NEW_BLOCK::request& arg, cryptonote_connection_context& context);
|
int handle_notify_new_block(int command, NOTIFY_NEW_BLOCK::request& arg, cryptonote_connection_context& context);
|
||||||
|
|
|
@ -2771,6 +2771,13 @@ skip:
|
||||||
}
|
}
|
||||||
//------------------------------------------------------------------------------------------------------------------------
|
//------------------------------------------------------------------------------------------------------------------------
|
||||||
template<class t_core>
|
template<class t_core>
|
||||||
|
bool t_cryptonote_protocol_handler<t_core>::is_busy_syncing()
|
||||||
|
{
|
||||||
|
const boost::unique_lock<boost::mutex> sync{m_sync_lock, boost::try_to_lock};
|
||||||
|
return !sync.owns_lock();
|
||||||
|
}
|
||||||
|
//------------------------------------------------------------------------------------------------------------------------
|
||||||
|
template<class t_core>
|
||||||
void t_cryptonote_protocol_handler<t_core>::drop_connection_with_score(cryptonote_connection_context &context, unsigned score, bool flush_all_spans)
|
void t_cryptonote_protocol_handler<t_core>::drop_connection_with_score(cryptonote_connection_context &context, unsigned score, bool flush_all_spans)
|
||||||
{
|
{
|
||||||
LOG_DEBUG_CC(context, "dropping connection id " << context.m_connection_id << " (pruning seed " <<
|
LOG_DEBUG_CC(context, "dropping connection id " << context.m_connection_id << " (pruning seed " <<
|
||||||
|
|
|
@ -499,6 +499,7 @@ namespace cryptonote
|
||||||
res.update_available = restricted ? false : m_core.is_update_available();
|
res.update_available = restricted ? false : m_core.is_update_available();
|
||||||
res.version = restricted ? "" : MONERO_VERSION_FULL;
|
res.version = restricted ? "" : MONERO_VERSION_FULL;
|
||||||
res.synchronized = check_core_ready();
|
res.synchronized = check_core_ready();
|
||||||
|
res.busy_syncing = m_p2p.get_payload_object().is_busy_syncing();
|
||||||
|
|
||||||
res.status = CORE_RPC_STATUS_OK;
|
res.status = CORE_RPC_STATUS_OK;
|
||||||
return true;
|
return true;
|
||||||
|
|
|
@ -88,7 +88,7 @@ namespace cryptonote
|
||||||
// advance which version they will stop working with
|
// advance which version they will stop working with
|
||||||
// Don't go over 32767 for any of these
|
// Don't go over 32767 for any of these
|
||||||
#define CORE_RPC_VERSION_MAJOR 3
|
#define CORE_RPC_VERSION_MAJOR 3
|
||||||
#define CORE_RPC_VERSION_MINOR 3
|
#define CORE_RPC_VERSION_MINOR 4
|
||||||
#define MAKE_CORE_RPC_VERSION(major,minor) (((major)<<16)|(minor))
|
#define MAKE_CORE_RPC_VERSION(major,minor) (((major)<<16)|(minor))
|
||||||
#define CORE_RPC_VERSION MAKE_CORE_RPC_VERSION(CORE_RPC_VERSION_MAJOR, CORE_RPC_VERSION_MINOR)
|
#define CORE_RPC_VERSION MAKE_CORE_RPC_VERSION(CORE_RPC_VERSION_MAJOR, CORE_RPC_VERSION_MINOR)
|
||||||
|
|
||||||
|
@ -684,6 +684,7 @@ namespace cryptonote
|
||||||
bool was_bootstrap_ever_used;
|
bool was_bootstrap_ever_used;
|
||||||
uint64_t database_size;
|
uint64_t database_size;
|
||||||
bool update_available;
|
bool update_available;
|
||||||
|
bool busy_syncing;
|
||||||
std::string version;
|
std::string version;
|
||||||
bool synchronized;
|
bool synchronized;
|
||||||
|
|
||||||
|
@ -724,6 +725,7 @@ namespace cryptonote
|
||||||
KV_SERIALIZE(was_bootstrap_ever_used)
|
KV_SERIALIZE(was_bootstrap_ever_used)
|
||||||
KV_SERIALIZE(database_size)
|
KV_SERIALIZE(database_size)
|
||||||
KV_SERIALIZE(update_available)
|
KV_SERIALIZE(update_available)
|
||||||
|
KV_SERIALIZE(busy_syncing)
|
||||||
KV_SERIALIZE(version)
|
KV_SERIALIZE(version)
|
||||||
KV_SERIALIZE(synchronized)
|
KV_SERIALIZE(synchronized)
|
||||||
END_KV_SERIALIZE_MAP()
|
END_KV_SERIALIZE_MAP()
|
||||||
|
|
Loading…
Reference in a new issue