MySQL 5.6.14 Source Code Document
|
Classes | |
struct | EventBufData_chunk |
Public Member Functions | |
NdbEventBuffer (Ndb *) | |
STATIC_CONST (ACTIVE_GCI_DIRECTORY_SIZE=4) | |
STATIC_CONST (ACTIVE_GCI_MASK=ACTIVE_GCI_DIRECTORY_SIZE-1) | |
NdbEventOperation * | createEventOperation (const char *eventName, NdbError &) |
NdbEventOperationImpl * | createEventOperationImpl (NdbEventImpl &evnt, NdbError &) |
void | dropEventOperation (NdbEventOperation *) |
void | add_drop_lock () |
void | add_drop_unlock () |
void | lock () |
void | unlock () |
void | add_op () |
void | remove_op () |
void | init_gci_containers () |
int | insertDataL (NdbEventOperationImpl *op, const SubTableData *const sdata, Uint32 len, LinearSectionPtr ptr[3]) |
void | execSUB_GCP_COMPLETE_REP (const SubGcpCompleteRep *const, Uint32 len, int complete_cluster_failure=0) |
void | complete_outof_order_gcis () |
void | report_node_failure_completed (Uint32 node_id) |
Uint64 | getLatestGCI () |
Uint32 | getEventId (int bufferId) |
int | pollEvents (int aMillisecondNumber, Uint64 *latestGCI=0) |
int | flushIncompleteEvents (Uint64 gci) |
NdbEventOperation * | nextEvent () |
bool | isConsistent (Uint64 &gci) |
bool | isConsistentGCI (Uint64 gci) |
NdbEventOperationImpl * | getGCIEventOperations (Uint32 *iter, Uint32 *event_types) |
void | deleteUsedEventOperations (Uint64 last_consumed_gci) |
NdbEventOperationImpl * | move_data () |
EventBufData * | alloc_data () |
int | alloc_mem (EventBufData *data, LinearSectionPtr ptr[3], Uint32 *change_sz) |
void | dealloc_mem (EventBufData *data, Uint32 *change_sz) |
int | copy_data (const SubTableData *const sdata, Uint32 len, LinearSectionPtr ptr[3], EventBufData *data, Uint32 *change_sz) |
int | merge_data (const SubTableData *const sdata, Uint32 len, LinearSectionPtr ptr[3], EventBufData *data, Uint32 *change_sz) |
int | get_main_data (Gci_container *bucket, EventBufData_hash::Pos &hpos, EventBufData *blob_data) |
void | add_blob_data (Gci_container *bucket, EventBufData *main_data, EventBufData *blob_data) |
void | free_list (EventBufData_list &list) |
void | reportStatus () |
void | set_total_buckets (Uint32) |
Static Public Member Functions | |
static NdbEventOperationImpl * | getEventOperationImpl (NdbEventOperation *tOp) |
Public Attributes | |
Uint32 | m_total_buckets |
Uint16 | m_min_gci_index |
Uint16 | m_max_gci_index |
Vector< Uint64 > | m_known_gci |
Vector< Gci_container_pod > | m_active_gci |
Ndb * | m_ndb |
Uint64 | m_latestGCI |
Uint64 | m_latest_complete_GCI |
Uint64 | m_highest_sub_gcp_complete_GCI |
Uint64 | m_latest_poll_GCI |
bool | m_startup_hack |
NdbMutex * | m_mutex |
struct NdbCondition * | p_cond |
Gci_container | m_complete_data |
EventBufData * | m_free_data |
Uint32 | m_free_data_sz |
EventBufData_list | m_available_data |
EventBufData_list | m_used_data |
unsigned | m_total_alloc |
unsigned | m_free_thresh |
unsigned | m_min_free_thresh |
unsigned | m_max_free_thresh |
unsigned | m_gci_slip_thresh |
NdbError | m_error |
Static Public Attributes | |
static NdbMutex * | p_add_drop_mutex |
Definition at line 480 of file NdbEventOperationImpl.hpp.
void NdbEventBuffer::dropEventOperation | ( | NdbEventOperation * | tOp | ) |
Needs mutex lock as report_node_XXX accesses list...
Definition at line 3384 of file NdbEventOperationImpl.cpp.
void NdbEventBuffer::execSUB_GCP_COMPLETE_REP | ( | const SubGcpCompleteRep * const | rep, |
Uint32 | len, | ||
int | complete_cluster_failure = 0 |
||
) |
Already completed GCI... Possible in case of resend during NF handling
out of order something
Definition at line 1925 of file NdbEventOperationImpl.cpp.
int NdbEventBuffer::flushIncompleteEvents | ( | Uint64 | gci | ) |
Find min complete gci
Definition at line 1291 of file NdbEventOperationImpl.cpp.
int NdbEventBuffer::insertDataL | ( | NdbEventOperationImpl * | op, |
const SubTableData *const | sdata, | ||
Uint32 | len, | ||
LinearSectionPtr | ptr[3] | ||
) |
Already completed GCI... Possible in case of resend during NF handling
Definition at line 2449 of file NdbEventOperationImpl.cpp.
void NdbEventBuffer::report_node_failure_completed | ( | Uint32 | node_id | ) |
Insert this event for each operation
Inject new event
Insert this event for each operation
And finally complete this GCI
Definition at line 2323 of file NdbEventOperationImpl.cpp.