class ProposedBlocks holds proposed pbft blocks together with propose votes hashes per period & round
More...
#include <proposed_blocks.hpp>
class ProposedBlocks holds proposed pbft blocks together with propose votes hashes per period & round
◆ ProposedBlocks()
taraxa::ProposedBlocks::ProposedBlocks |
( |
std::shared_ptr< DbStorage > |
db | ) |
|
|
inline |
◆ checkOldBlocksPresence()
std::optional< std::string > taraxa::ProposedBlocks::checkOldBlocksPresence |
( |
PbftPeriod |
current_period | ) |
const |
Check if there are any old proposed blocks that were supposed to be deleted.
- Parameters
-
- Returns
- err msg in case there are some old blocks, otherwise empty optional
◆ cleanupProposedPbftBlocksByPeriod()
void taraxa::ProposedBlocks::cleanupProposedPbftBlocksByPeriod |
( |
PbftPeriod |
period | ) |
|
Cleanup all proposed PBFT blocks for the finalized period.
- Parameters
-
◆ getPbftProposedBlock()
std::optional< std::pair< std::shared_ptr< PbftBlock >, bool > > taraxa::ProposedBlocks::getPbftProposedBlock |
( |
PbftPeriod |
period, |
|
|
const blk_hash_t & |
block_hash |
|
) |
| const |
Get a proposed PBFT block based on specified period and block hash.
- Parameters
-
- Returns
- optional<pair<block, is_valid flag>>
◆ isInProposedBlocks()
bool taraxa::ProposedBlocks::isInProposedBlocks |
( |
PbftPeriod |
period, |
|
|
const blk_hash_t & |
block_hash |
|
) |
| const |
Check if specified block is already in proposed blocks.
- Parameters
-
- Returns
- true if block is present, otherwise false
◆ markBlockAsValid()
void taraxa::ProposedBlocks::markBlockAsValid |
( |
const std::shared_ptr< PbftBlock > & |
proposed_block | ) |
|
Mark block as valid - no need to validate it again.
- Parameters
-
◆ pushProposedPbftBlock() [1/2]
bool taraxa::ProposedBlocks::pushProposedPbftBlock |
( |
const std::shared_ptr< PbftBlock > & |
proposed_block, |
|
|
bool |
save_to_db = true |
|
) |
| |
Push proposed PBFT block into the proposed blocks.
- Parameters
-
proposed_block | |
save_to_db | if true save to db |
- Returns
- true if block was successfully pushed, otherwise false
◆ pushProposedPbftBlock() [2/2]
bool taraxa::ProposedBlocks::pushProposedPbftBlock |
( |
const std::shared_ptr< PbftBlock > & |
proposed_block, |
|
|
const std::shared_ptr< PbftVote > & |
propose_vote |
|
) |
| |
Push proposed PBFT block into the proposed blocks.
- Parameters
-
proposed_block | proposed PBFT block |
propose_vote | propose PBFT vote |
- Returns
- true if block was successfully pushed, otherwise false
◆ db_
std::shared_ptr<DbStorage> taraxa::ProposedBlocks::db_ |
|
private |
◆ proposed_blocks_
◆ proposed_blocks_mutex_
std::shared_mutex taraxa::ProposedBlocks::proposed_blocks_mutex_ |
|
mutableprivate |
The documentation for this class was generated from the following files: