Skip to content
This repository has been archived by the owner on Aug 2, 2022. It is now read-only.

Commit

Permalink
Merge pull request #9985 from EOSIO/EPE-389-2.0.x
Browse files Browse the repository at this point in the history
EPE-389 net_plugin stall during head catchup - merge release/2.0.x
  • Loading branch information
nksanthosh authored Feb 2, 2021
2 parents 74a9457 + 4800c3f commit c952d40
Showing 1 changed file with 7 additions and 4 deletions.
11 changes: 7 additions & 4 deletions plugins/net_plugin/net_plugin.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -147,7 +147,7 @@ namespace eosio {

private:
constexpr static auto stage_str( stages s );
void set_state( stages s );
bool set_state( stages s );
bool is_sync_required( uint32_t fork_head_block_num );
void request_next_chunk( std::unique_lock<std::mutex> g_sync, const connection_ptr& conn = connection_ptr() );
void start_sync( const connection_ptr& c, uint32_t target );
Expand Down Expand Up @@ -1372,12 +1372,13 @@ namespace eosio {
}
}

void sync_manager::set_state(stages newstate) {
bool sync_manager::set_state(stages newstate) {
if( sync_state == newstate ) {
return;
return false;
}
fc_ilog( logger, "old state ${os} becoming ${ns}", ("os", stage_str( sync_state ))( "ns", stage_str( newstate ) ) );
sync_state = newstate;
return true;
}

void sync_manager::sync_reset_lib_num(const connection_ptr& c) {
Expand Down Expand Up @@ -1808,7 +1809,9 @@ namespace eosio {
} );

if( set_state_to_head_catchup ) {
set_state( head_catchup );
if( set_state( head_catchup ) ) {
send_handshakes();
}
} else {
set_state( in_sync );
send_handshakes();
Expand Down

0 comments on commit c952d40

Please sign in to comment.