mirror of
https://github.com/ton-blockchain/ton
synced 2025-03-09 15:40:10 +00:00
Merge branch 'testnet' into block-generation
This commit is contained in:
commit
e4e77c16c5
463 changed files with 29976 additions and 2517 deletions
|
|
@ -74,6 +74,8 @@ class ValidatorSessionImpl : public ValidatorSession {
|
|||
td::BufferSlice signature_;
|
||||
|
||||
std::map<ValidatorSessionCandidateId, tl_object_ptr<ton_api::validatorSession_candidate>> blocks_;
|
||||
// src_round_candidate_[src_id][round] -> candidate id
|
||||
std::vector<std::map<td::uint32, ValidatorSessionCandidateId>> src_round_candidate_;
|
||||
|
||||
catchain::CatChainSessionId unique_hash_;
|
||||
|
||||
|
|
@ -110,7 +112,8 @@ class ValidatorSessionImpl : public ValidatorSession {
|
|||
td::actor::send_closure(id_, &ValidatorSessionImpl::preprocess_block, block);
|
||||
}
|
||||
void process_broadcast(const PublicKeyHash &src, td::BufferSlice data) override {
|
||||
td::actor::send_closure(id_, &ValidatorSessionImpl::process_broadcast, src, std::move(data));
|
||||
td::actor::send_closure(id_, &ValidatorSessionImpl::process_broadcast, src, std::move(data),
|
||||
td::optional<ValidatorSessionCandidateId>(), true);
|
||||
}
|
||||
void process_message(const PublicKeyHash &src, td::BufferSlice data) override {
|
||||
td::actor::send_closure(id_, &ValidatorSessionImpl::process_message, src, std::move(data));
|
||||
|
|
@ -176,7 +179,9 @@ class ValidatorSessionImpl : public ValidatorSession {
|
|||
void process_blocks(std::vector<catchain::CatChainBlock *> blocks);
|
||||
void finished_processing();
|
||||
void preprocess_block(catchain::CatChainBlock *block);
|
||||
void process_broadcast(PublicKeyHash src, td::BufferSlice data);
|
||||
bool ensure_candidate_unique(td::uint32 src_idx, td::uint32 round, ValidatorSessionCandidateId block_id);
|
||||
void process_broadcast(PublicKeyHash src, td::BufferSlice data, td::optional<ValidatorSessionCandidateId> expected_id,
|
||||
bool is_overlay_broadcast);
|
||||
void process_message(PublicKeyHash src, td::BufferSlice data);
|
||||
void process_query(PublicKeyHash src, td::BufferSlice data, td::Promise<td::BufferSlice> promise);
|
||||
|
||||
|
|
@ -208,6 +213,8 @@ class ValidatorSessionImpl : public ValidatorSession {
|
|||
static const size_t MAX_REJECT_REASON_SIZE = 1024;
|
||||
static const td::int32 MAX_FUTURE_ROUND_BLOCK = 100;
|
||||
static const td::int32 MAX_PAST_ROUND_BLOCK = 20;
|
||||
constexpr static const double REQUEST_BROADCAST_P2P_DELAY = 2.0;
|
||||
static const td::uint32 MAX_CANDIDATE_EXTRA_SIZE = 1024;
|
||||
};
|
||||
|
||||
} // namespace validatorsession
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue