1
0
Fork 0
mirror of https://github.com/ton-blockchain/ton synced 2025-03-09 15:40:10 +00:00

Add more information to validatorStats.newValidatorGroup.node

This commit is contained in:
SpyCheese 2024-12-27 15:23:31 +03:00
parent 4ec34edc0c
commit 5ce9d0bcdb
4 changed files with 12 additions and 6 deletions

View file

@ -938,7 +938,7 @@ validatorStats.validatedBlock
bytes:int collated_data_bytes:int
total_time:double work_time:double cpu_work_time:double = validatorStats.ValidatedBlock;
validatorStats.newValidatorGroup.node id:int256 weight:long = validatorStats.newValidatorGroup.Node;
validatorStats.newValidatorGroup.node id:int256 pubkey:PublicKey adnl_id:int256 weight:long = validatorStats.newValidatorGroup.Node;
validatorStats.newValidatorGroup session_id:int256 shard:tonNode.shardId cc_seqno:int
last_key_block_seqno:int started_at:double
self_idx:int self:int256 nodes:(vector validatorStats.newValidatorGroup.node) = validatorStats.NewValidatorGroup;

Binary file not shown.

View file

@ -213,6 +213,8 @@ struct ValidatorSessionStats {
struct NewValidatorGroupStats {
struct Node {
PublicKeyHash id = PublicKeyHash::zero();
PublicKey pubkey;
adnl::AdnlNodeIdShort adnl_id = adnl::AdnlNodeIdShort::zero();
ValidatorWeight weight = 0;
};
@ -228,8 +230,8 @@ struct NewValidatorGroupStats {
tl_object_ptr<ton_api::validatorStats_newValidatorGroup> tl() const {
std::vector<tl_object_ptr<ton_api::validatorStats_newValidatorGroup_node>> nodes_arr;
for (const auto &node : nodes) {
nodes_arr.push_back(
create_tl_object<ton_api::validatorStats_newValidatorGroup_node>(node.id.bits256_value(), node.weight));
nodes_arr.push_back(create_tl_object<ton_api::validatorStats_newValidatorGroup_node>(
node.id.bits256_value(), node.pubkey.tl(), node.adnl_id.bits256_value(), node.weight));
}
return create_tl_object<ton_api::validatorStats_newValidatorGroup>(session_id, create_tl_shard_id(shard), cc_seqno,
last_key_block_seqno, started_at, self_idx,

View file

@ -155,8 +155,8 @@ void ValidatorGroup::validate_block_candidate(validatorsession::BlockSourceInfo
return;
}
VLOG(VALIDATOR_DEBUG) << "validating block candidate " << next_block_id;
run_validate_query(shard_, min_masterchain_block_id_, prev_block_ids_, std::move(block), validator_set_,
local_id_, manager_, td::Timestamp::in(15.0), std::move(P));
run_validate_query(shard_, min_masterchain_block_id_, prev_block_ids_, std::move(block), validator_set_, local_id_,
manager_, td::Timestamp::in(15.0), std::move(P));
}
void ValidatorGroup::update_approve_cache(CacheKey key, UnixTime value) {
@ -421,7 +421,11 @@ void ValidatorGroup::start(std::vector<BlockIdExt> prev, BlockIdExt min_masterch
if (id == local_id_) {
stats.self_idx = idx;
}
stats.nodes.push_back(validatorsession::NewValidatorGroupStats::Node{id, node.weight});
stats.nodes.push_back(validatorsession::NewValidatorGroupStats::Node{
.id = id,
.pubkey = PublicKey(pubkeys::Ed25519(node.key)),
.adnl_id = (node.addr.is_zero() ? adnl::AdnlNodeIdShort{id} : adnl::AdnlNodeIdShort{node.addr}),
.weight = node.weight});
++idx;
}
td::actor::send_closure(manager_, &ValidatorManager::log_new_validator_group_stats, std::move(stats));