diff --git a/validator/impl/collator-impl.h b/validator/impl/collator-impl.h index 44286e722..462dfc6ff 100644 --- a/validator/impl/collator-impl.h +++ b/validator/impl/collator-impl.h @@ -213,7 +213,7 @@ class Collator final : public td::actor::Actor { std::map sender_generated_messages_count_; unsigned dispatch_queue_ops_{0}; std::map last_dispatch_queue_emitted_lt_; - bool have_unprocessed_account_dispatch_queue_ = true; + bool have_unprocessed_account_dispatch_queue_ = false; td::uint64 defer_out_queue_size_limit_; td::uint64 hard_defer_out_queue_size_limit_; diff --git a/validator/impl/validate-query.cpp b/validator/impl/validate-query.cpp index 8b062ce98..8c39a1ab4 100644 --- a/validator/impl/validate-query.cpp +++ b/validator/impl/validate-query.cpp @@ -3404,7 +3404,7 @@ bool ValidateQuery::check_account_dispatch_queue_update(td::Bits256 addr, Ref 0 && max_removed_lt == 0) { + if (old_dict_size > 0 && max_removed_lt != 0) { ++processed_account_dispatch_queues_; } return true; @@ -3439,7 +3439,6 @@ bool ValidateQuery::unpack_dispatch_queue_update() { have_unprocessed_account_dispatch_queue_ = false; td::uint64 total_account_dispatch_queues = 0; ps_.dispatch_queue_->check_for_each([&](Ref, td::ConstBitPtr, int n) -> bool { - assert(n == 352); ++total_account_dispatch_queues; if (total_account_dispatch_queues > processed_account_dispatch_queues_) { return false;