CCF
Loading...
Searching...
No Matches
Public Member Functions | Protected Attributes | List of all members
ccf::indexing::LazyStrategy< Base > Class Template Reference

#include <strategy.h>

Inherits client::PerfBase< TOptions >.

Public Member Functions

std::optional< ccf::SeqNonext_requested () override
 
void extend_index_to (ccf::TxID to_txid)
 
- Public Member Functions inherited from client::PerfBase< TOptions >
 PerfBase (const TOptions &o)
 
void init_connection ()
 
std::shared_ptr< RpcTlsClientget_connection ()
 
void send_all_creation_transactions ()
 
void prepare_all_transactions ()
 
timing::Results send_all_prepared_transactions ()
 
void wait_for_global_commit (const ccf::TxID &target)
 
void wait_for_global_commit (const RpcTlsClient::Response &response)
 
void begin_timing ()
 
timing::Results end_timing (size_t end_highest_local_commit)
 
void summarize_results (const timing::Results &timing_results)
 
virtual void run ()
 
template<typename T >
rand_range ()
 
template<typename T >
rand_range (T exclusive_upper_bound)
 
template<typename T >
rand_range (T inclusive_lower_bound, T exclusive_upper_bound)
 

Protected Attributes

ccf::pal::Mutex lock
 
ccf::SeqNo max_requested_seqno = 0
 
- Protected Attributes inherited from client::PerfBase< TOptions >
TOptions options
 
std::mt19937 rand_generator
 
nlohmann::json verification_target
 
std::shared_ptr< RpcTlsClientrpc_connection
 
PreparedTxs prepared_txs
 
timing::ResponseTimes response_times
 
ccf::TxID last_response_tx_id = {0, 0}
 
std::chrono::high_resolution_clock::time_point last_write_time
 
std::chrono::nanoseconds write_delay_ns = std::chrono::nanoseconds::zero()
 

Additional Inherited Members

- Protected Types inherited from client::PerfBase< TOptions >
using PreparedTxs = std::vector< PreparedTx >
 
- Protected Member Functions inherited from client::PerfBase< TOptions >
std::shared_ptr< RpcTlsClientcreate_connection (bool force_unsigned=false)
 
void add_prepared_ser_tx (const std::string &method, const std::span< const uint8_t > params, bool expects_commit, const std::optional< size_t > &index)
 
virtual void prepare_transactions ()=0
 
virtual std::optional< RpcTlsClient::Responsesend_creation_transactions ()
 
virtual bool check_response (const RpcTlsClient::Response &r)
 
virtual void pre_creation_hook ()
 
virtual void post_creation_hook ()
 
virtual void pre_timing_body_hook ()
 
virtual void post_timing_body_hook ()
 
virtual timing::Results call_raw_batch (std::shared_ptr< RpcTlsClient > &connection, const PreparedTxs &txs)
 
void kick_off_timing ()
 
void write (const PreparedTx &tx, size_t &read, size_t &written, const std::shared_ptr< RpcTlsClient > &connection)
 
void blocking_read (size_t &read, size_t written, const std::shared_ptr< RpcTlsClient > &connection)
 
void reconnect (std::shared_ptr< RpcTlsClient > &connection)
 
RpcTlsClient::Response get_tx_status (const std::shared_ptr< RpcTlsClient > &connection, size_t view, size_t seqno)
 
virtual void verify_params (const nlohmann::json &expected)
 
virtual void verify_initial_state (const nlohmann::json &expected)
 
virtual void verify_final_state (const nlohmann::json &expected)
 
- Static Protected Member Functions inherited from client::PerfBase< TOptions >
static size_t total_byte_size (const PreparedTxs &txs)
 

Member Function Documentation

◆ extend_index_to()

template<typename Base >
void ccf::indexing::LazyStrategy< Base >::extend_index_to ( ccf::TxID  to_txid)
inline

◆ next_requested()

template<typename Base >
std::optional< ccf::SeqNo > ccf::indexing::LazyStrategy< Base >::next_requested ( )
inlineoverride

Member Data Documentation

◆ lock

template<typename Base >
ccf::pal::Mutex ccf::indexing::LazyStrategy< Base >::lock
protected

◆ max_requested_seqno

template<typename Base >
ccf::SeqNo ccf::indexing::LazyStrategy< Base >::max_requested_seqno = 0
protected

The documentation for this class was generated from the following file: