Added initializing bitcoin_confirmations when node starts; made correct reindex
This commit is contained in:
parent
b33c5bf86f
commit
a229d0acc4
4 changed files with 21 additions and 3 deletions
|
|
@ -108,18 +108,21 @@ void database::reindex(fc::path data_dir, const genesis_state_type& initial_allo
|
|||
skip_transaction_dupe_check |
|
||||
skip_tapos_check |
|
||||
skip_witness_schedule_check |
|
||||
skip_authority_check);
|
||||
skip_authority_check |
|
||||
skip_btc_tx_sending);
|
||||
else
|
||||
apply_block(*block, skip_witness_signature |
|
||||
skip_transaction_signatures |
|
||||
skip_transaction_dupe_check |
|
||||
skip_tapos_check |
|
||||
skip_witness_schedule_check |
|
||||
skip_authority_check);
|
||||
skip_authority_check |
|
||||
skip_btc_tx_sending);
|
||||
}
|
||||
if (!_slow_replays)
|
||||
_undo_db.enable();
|
||||
auto end = fc::time_point::now();
|
||||
restore_bitcoin_transaction_status();
|
||||
ilog( "Done reindexing, elapsed time: ${t} sec", ("t",double((end-start).count())/1000000.0 ) );
|
||||
} FC_CAPTURE_AND_RETHROW( (data_dir) ) }
|
||||
|
||||
|
|
|
|||
|
|
@ -378,4 +378,17 @@ fc::optional<operation> database::create_bitcoin_revert_proposals( const witness
|
|||
return fc::optional<operation>();
|
||||
}
|
||||
|
||||
|
||||
void database::restore_bitcoin_transaction_status()
|
||||
{
|
||||
const auto& btc_tx_idx = get_index_type<bitcoin_transaction_index>().indices().get<by_id>();
|
||||
for( const auto& bto : btc_tx_idx ) {
|
||||
std::set<fc::sha256> valid_vins;
|
||||
for( const auto& v : bto.transaction.vin ) {
|
||||
valid_vins.insert( v.prevout.hash );
|
||||
}
|
||||
bitcoin_confirmations.insert( bitcoin_transaction_confirmations( bto.transaction.get_txid(), valid_vins ) );
|
||||
}
|
||||
}
|
||||
|
||||
} }
|
||||
|
|
@ -565,6 +565,8 @@ namespace graphene { namespace chain {
|
|||
|
||||
private:
|
||||
|
||||
void restore_bitcoin_transaction_status(); // db_sidechain
|
||||
|
||||
vector< processed_transaction > _pending_tx;
|
||||
fork_database _fork_db;
|
||||
|
||||
|
|
|
|||
|
|
@ -86,7 +86,7 @@ namespace graphene { namespace chain {
|
|||
} } // graphene::chain
|
||||
|
||||
FC_REFLECT( graphene::chain::bitcoin_transaction_send_operation::fee_parameters_type, (fee)(price_per_kbyte) )
|
||||
FC_REFLECT( graphene::chain::bitcoin_transaction_send_operation, (fee)(payer)(vins)(vouts)(transaction)(fee_for_size) )
|
||||
FC_REFLECT( graphene::chain::bitcoin_transaction_send_operation, (fee)(payer)(pw_vin)(vins)(vouts)(transaction)(fee_for_size) )
|
||||
|
||||
FC_REFLECT( graphene::chain::bitcoin_transaction_sign_operation::fee_parameters_type, (fee)(price_per_kbyte) )
|
||||
FC_REFLECT( graphene::chain::bitcoin_transaction_sign_operation, (fee)(payer)(proposal_id)(signatures) )
|
||||
|
|
|
|||
Loading…
Reference in a new issue