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

Changes in validation

* Configure collator list in validator-console
* Remove "lite-validator" flags
* Better compatibility in validate-query.cpp
This commit is contained in:
SpyCheese 2024-06-11 11:29:52 +03:00
parent f91ed6cc31
commit 38ab70c037
16 changed files with 368 additions and 107 deletions

View file

@ -184,6 +184,7 @@ class ValidatorEngine : public td::actor::Actor {
td::Ref<ton::validator::ValidatorManagerOptions> validator_options_;
Config config_;
ton::tl_object_ptr<ton::ton_api::engine_validator_customOverlaysConfig> custom_overlays_config_;
ton::tl_object_ptr<ton::ton_api::engine_validator_collatorsList> collators_list_;
std::set<ton::PublicKeyHash> running_gc_;
@ -235,8 +236,6 @@ class ValidatorEngine : public td::actor::Actor {
ton::BlockSeqno truncate_seqno_{0};
std::string session_logs_file_;
bool not_all_shards_ = false;
ton::validator::ValidatorManagerOptions::ValidatorMode validator_mode_ =
ton::validator::ValidatorManagerOptions::validator_normal;
std::set<ton::CatchainSeqno> unsafe_catchains_;
std::map<ton::BlockSeqno, std::pair<ton::CatchainSeqno, td::uint32>> unsafe_catchain_rotations_;
@ -319,9 +318,6 @@ class ValidatorEngine : public td::actor::Actor {
void set_not_all_shards() {
not_all_shards_ = true;
}
void set_validator_mode(ton::validator::ValidatorManagerOptions::ValidatorMode mode) {
validator_mode_ = mode;
}
void start_up() override;
ValidatorEngine() {
@ -333,6 +329,7 @@ class ValidatorEngine : public td::actor::Actor {
void load_local_config(td::Promise<td::Unit> promise);
void load_config(td::Promise<td::Unit> promise);
void set_shard_check_function();
void load_collators_list();
void start();
@ -411,6 +408,9 @@ class ValidatorEngine : public td::actor::Actor {
std::string custom_overlays_config_file() const {
return db_root_ + "/custom-overlays.json";
}
std::string collators_list_file() const {
return db_root_ + "/collators-list.json";
}
void load_custom_overlays_config();
td::Status write_custom_overlays_config();
@ -514,6 +514,10 @@ class ValidatorEngine : public td::actor::Actor {
ton::PublicKeyHash src, td::uint32 perm, td::Promise<td::BufferSlice> promise);
void run_control_query(ton::ton_api::engine_validator_setStateSerializerEnabled &query, td::BufferSlice data,
ton::PublicKeyHash src, td::uint32 perm, td::Promise<td::BufferSlice> promise);
void run_control_query(ton::ton_api::engine_validator_setCollatorsList &query, td::BufferSlice data,
ton::PublicKeyHash src, td::uint32 perm, td::Promise<td::BufferSlice> promise);
void run_control_query(ton::ton_api::engine_validator_showCollatorsList &query, td::BufferSlice data,
ton::PublicKeyHash src, td::uint32 perm, td::Promise<td::BufferSlice> promise);
template <class T>
void run_control_query(T &query, td::BufferSlice data, ton::PublicKeyHash src, td::uint32 perm,
td::Promise<td::BufferSlice> promise) {