19 #ifndef CLUSTER_CONNECTION_IMPL_HPP
20 #define CLUSTER_CONNECTION_IMPL_HPP
22 #include <ndb_cluster_connection.hpp>
25 #include "DictCache.hpp"
27 extern NdbMutex *g_ndb_connection_mutex;
36 void* run_ndb_cluster_connection_connect_thread(
void*);
42 m_scan_batch_size(MAX_SCAN_BATCH_SIZE),
43 m_batch_byte_size(SCAN_BATCH_SIZE),
44 m_batch_size(DEF_BATCH_SIZE),
45 m_waitfor_timeout(120000),
46 m_default_queue_option(0)
49 Uint32 m_scan_batch_size;
50 Uint32 m_batch_byte_size;
52 Uint32 m_waitfor_timeout;
53 Uint32 m_default_queue_option;
60 int force_api_nodeid);
69 inline unsigned get_connect_count()
const;
70 inline unsigned get_min_db_version()
const;
72 inline Uint64 *get_latest_trans_gci() {
return &m_latest_trans_gci; }
77 friend void* run_ndb_cluster_connection_connect_thread(
void*);
84 Node(Uint32 _g= 0, Uint32 _id= 0) : this_group(0),
97 void connect_thread();
98 void set_name(
const char *
name);
99 Uint32 get_db_nodes(Uint8 nodesarray[MAX_NDB_NODES])
const;
101 int connect(
int no_retries,
102 int retry_delay_in_seconds,
110 int (*m_connect_callback)(void);
112 int m_optimized_node_selection;
113 int m_run_connect_thread;
114 NdbMutex *m_event_add_drop_mutex;
115 Uint64 m_latest_trans_gci;
117 NdbMutex* m_new_delete_ndb_mutex;
118 Ndb* m_first_ndb_object;
119 void link_ndb_object(
Ndb*);
120 void unlink_ndb_object(
Ndb*);
123 unsigned m_latest_error;
129 Uint32 m_max_trans_id;
133 Uint64 globalApiStatsBaseline[ Ndb::NumClientStatistics ];