mirror of
https://github.com/monero-project/monero.git
synced 2024-11-18 10:01:02 +00:00
cryptonote_protocol: don't serialize an unneeded new block message
Non fluffy block nodes should now be very rare
This commit is contained in:
parent
0dddfeacc9
commit
ce9457a379
1 changed files with 12 additions and 7 deletions
|
@ -1671,11 +1671,6 @@ skip:
|
||||||
fluffy_arg.b = arg.b;
|
fluffy_arg.b = arg.b;
|
||||||
fluffy_arg.b.txs = fluffy_txs;
|
fluffy_arg.b.txs = fluffy_txs;
|
||||||
|
|
||||||
// pre-serialize them
|
|
||||||
std::string fullBlob, fluffyBlob;
|
|
||||||
epee::serialization::store_t_to_binary(arg, fullBlob);
|
|
||||||
epee::serialization::store_t_to_binary(fluffy_arg, fluffyBlob);
|
|
||||||
|
|
||||||
// sort peers between fluffy ones and others
|
// sort peers between fluffy ones and others
|
||||||
std::list<boost::uuids::uuid> fullConnections, fluffyConnections;
|
std::list<boost::uuids::uuid> fullConnections, fluffyConnections;
|
||||||
m_p2p->for_each_connection([this, &exclude_context, &fullConnections, &fluffyConnections](connection_context& context, nodetool::peerid_type peer_id, uint32_t support_flags)
|
m_p2p->for_each_connection([this, &exclude_context, &fullConnections, &fluffyConnections](connection_context& context, nodetool::peerid_type peer_id, uint32_t support_flags)
|
||||||
|
@ -1697,8 +1692,18 @@ skip:
|
||||||
});
|
});
|
||||||
|
|
||||||
// send fluffy ones first, we want to encourage people to run that
|
// send fluffy ones first, we want to encourage people to run that
|
||||||
m_p2p->relay_notify_to_list(NOTIFY_NEW_FLUFFY_BLOCK::ID, fluffyBlob, fluffyConnections);
|
if (!fluffyConnections.empty())
|
||||||
m_p2p->relay_notify_to_list(NOTIFY_NEW_BLOCK::ID, fullBlob, fullConnections);
|
{
|
||||||
|
std::string fluffyBlob;
|
||||||
|
epee::serialization::store_t_to_binary(fluffy_arg, fluffyBlob);
|
||||||
|
m_p2p->relay_notify_to_list(NOTIFY_NEW_FLUFFY_BLOCK::ID, fluffyBlob, fluffyConnections);
|
||||||
|
}
|
||||||
|
if (!fullConnections.empty())
|
||||||
|
{
|
||||||
|
std::string fullBlob;
|
||||||
|
epee::serialization::store_t_to_binary(arg, fullBlob);
|
||||||
|
m_p2p->relay_notify_to_list(NOTIFY_NEW_BLOCK::ID, fullBlob, fullConnections);
|
||||||
|
}
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue