List of all members.
Public Member Functions |
bool | init () |
bool | process () |
void | shutdown () |
void | setSleepInterval (uint32_t seconds) |
uint32_t | getSleepInterval () |
void | setIgnoreErrors (bool value) |
void | setApplierState (const std::string &err_msg, bool status) |
void | addMasterId (uint32_t id) |
bool | processSingleMaster (const std::string &master_id) |
void | run (void) |
void | markInErrorState () |
void | clearErrorState () |
const std::string & | getErrorMessage () const |
bool | executeSQL (std::vector< std::string > &sql) |
Protected Attributes |
drizzled::Session::shared_ptr | _session |
Private Types |
typedef std::vector< uint64_t > | TrxIdList |
Private Member Functions |
bool | getListOfCompletedTransactions (const std::string &master_id, TrxIdList &list) |
bool | getMessage (drizzled::message::Transaction &transaction, std::string &commit_id, const std::string &master_id, uint64_t trx_id, std::string &originating_server_uuid, uint64_t &originating_commit_id, uint32_t segment_id) |
bool | convertToSQL (const drizzled::message::Transaction &transaction, std::vector< std::string > &aggregate_sql, std::vector< std::string > &segmented_sql) |
bool | executeSQLWithCommitId (std::vector< std::string > &sql, const std::string &commit_id, const std::string &originating_server_uuid, uint64_t originating_commit_id, const std::string &master_id) |
bool | deleteFromQueue (const std::string &master_id, uint64_t trx_id) |
bool | isEndStatement (const drizzled::message::Statement &statement) |
Private Attributes |
uint32_t | _check_interval |
std::vector< uint32_t > | _master_ids |
bool | _ignore_errors |
Detailed Description
Definition at line 39 of file queue_consumer.h.
Member Function Documentation
bool slave::QueueConsumer::convertToSQL |
( |
const drizzled::message::Transaction & |
transaction, |
|
|
std::vector< std::string > & |
aggregate_sql, |
|
|
std::vector< std::string > & |
segmented_sql |
|
) |
| |
|
private |
Convert the given Transaction message into equivalent SQL.
- Parameters:
-
[in] | transaction | Transaction protobuf message to convert. |
[in,out] | aggregate_sql | Buffer for total SQL for this transaction. |
[in,out] | segmented_sql | Buffer for carried over segmented statements. |
- Return values:
-
Definition at line 264 of file queue_consumer.cc.
bool slave::QueueConsumer::deleteFromQueue |
( |
const std::string & |
master_id, |
|
|
uint64_t |
trx_id |
|
) |
| |
|
private |
Remove messages for a given transaction from the queue.
- Parameters:
-
trx_id | Transaction ID for the messages to remove. |
- Return values:
-
Definition at line 448 of file queue_consumer.cc.
bool slave::SQLExecutor::executeSQL |
( |
std::vector< std::string > & |
sql | ) |
|
|
inherited |
Execute a batch of SQL statements.
- Parameters:
-
sql | Batch of SQL statements to execute. |
- Return values:
-
Definition at line 49 of file sql_executor.cc.
bool slave::QueueConsumer::executeSQLWithCommitId |
( |
std::vector< std::string > & |
sql, |
|
|
const std::string & |
commit_id, |
|
|
const std::string & |
originating_server_uuid, |
|
|
uint64_t |
originating_commit_id, |
|
|
const std::string & |
master_id |
|
) |
| |
|
private |
Execute a batch of SQL statements.
- Parameters:
-
sql | Batch of SQL statements to execute. |
commit_id | Commit ID value to store in state table. |
originating_server_uuid | Server ID of the master where this SQL was originally applied. |
originating_commit_id | Commit ID of the master where this SQL was originally applied. |
- Return values:
-
Definition at line 422 of file queue_consumer.cc.
bool slave::QueueConsumer::getListOfCompletedTransactions |
( |
const std::string & |
master_id, |
|
|
TrxIdList & |
list |
|
) |
| |
|
private |
Get a list of transaction IDs from the queue that are complete.
A "complete" transaction is one in which we have received the end segment of the transaction.
- Parameters:
-
[in] | master_id | Identifier of the master we are interested in. |
[out] | list | The list to populate with transaction IDs. |
- Return values:
-
Definition at line 230 of file queue_consumer.cc.
bool slave::QueueConsumer::init |
( |
void |
| ) |
|
|
virtual |
bool slave::QueueConsumer::process |
( |
| ) |
|
|
virtual |
Method that actually does the work around the queue.
Returning 'false' from this method currently causes the thread to shutdown.
- Return values:
-
Implements slave::QueueThread.
Definition at line 53 of file queue_consumer.cc.
void slave::QueueConsumer::setApplierState |
( |
const std::string & |
err_msg, |
|
|
bool |
status |
|
) |
| |
Update applier status in state table.
- Parameters:
-
err_msg | Error message string |
status | false = STOPPED, true = RUNNING |
Definition at line 380 of file queue_consumer.cc.
void slave::QueueConsumer::setIgnoreErrors |
( |
bool |
value | ) |
|
|
inline |
Determines if we should ignore errors from statements pulled from masters.
Definition at line 66 of file queue_consumer.h.
void slave::QueueConsumer::shutdown |
( |
| ) |
|
|
virtual |
Member Data Documentation
uint32_t slave::QueueConsumer::_check_interval |
|
private |
Number of seconds to sleep between checking queue for messages
Definition at line 90 of file queue_consumer.h.
The documentation for this class was generated from the following files: