MySQL 5.6.14 Source Code Document
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
SignalData.hpp
1 /*
2  Copyright (c) 2003, 2010, Oracle and/or its affiliates. All rights reserved.
3 
4  This program is free software; you can redistribute it and/or modify
5  it under the terms of the GNU General Public License as published by
6  the Free Software Foundation; version 2 of the License.
7 
8  This program is distributed in the hope that it will be useful,
9  but WITHOUT ANY WARRANTY; without even the implied warranty of
10  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11  GNU General Public License for more details.
12 
13  You should have received a copy of the GNU General Public License
14  along with this program; if not, write to the Free Software
15  Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
16 */
17 
18 #ifndef SIGNAL_DATA_H
19 #define SIGNAL_DATA_H
20 
21 #include <ndb_global.h>
22 #include <kernel/ndb_limits.h>
23 #include <kernel/kernel_types.h>
24 
25 #define ASSERT_BOOL(flag, message) assert(flag<=1)
26 #define ASSERT_RANGE(value, min, max, message) \
27  assert((value) >= (min) && (value) <= (max))
28 #define ASSERT_MAX(value, max, message) assert((value) <= (max))
29 
30 #define SECTION(x) STATIC_CONST(x)
31 
32 template <typename T>
33 inline
34 T*
35 cast_ptr(Uint32 * ptr)
36 {
37  NDB_ASSERT_POD(T);
38  return new (ptr) T;
39 }
40 
41 template <typename T>
42 inline
43 const T*
44 cast_constptr(const Uint32 * ptr)
45 {
46  NDB_ASSERT_POD(T);
47  return const_cast<const T*>(new (const_cast<Uint32*>(ptr)) T);
48 }
49 
50 #define CAST_PTR(Y,X) cast_ptr<Y>(X)
51 #define CAST_CONSTPTR(Y,X) cast_constptr<Y>(X)
52 
53 // defines for setter and getters on commonly used member data in signals
54 
55 #define GET_SET_SENDERDATA \
56  Uint32 getSenderData() { return senderData; }; \
57  void setSenderData(Uint32 _s) { senderData = _s; };
58 
59 #define GET_SET_SENDERREF \
60  Uint32 getSenderRef() { return senderRef; }; \
61  void setSenderRef(Uint32 _s) { senderRef = _s; };
62 
63 #define GET_SET_PREPAREID \
64  Uint32 getPrepareId() { return prepareId; }; \
65  void setPrepareId(Uint32 _s) { prepareId = _s; };
66 
67 #define GET_SET_ERRORCODE \
68  Uint32 getErrorCode() { return errorCode; }; \
69  void setErrorCode(Uint32 _s) { errorCode = _s; };
70 
71 #define GET_SET_TCERRORCODE \
72  Uint32 getTCErrorCode() { return TCErrorCode; }; \
73  void setTCErrorCode(Uint32 _s) { TCErrorCode = _s; };
74 
75 #define GSN_PRINT_SIGNATURE(f) bool f(FILE *, const Uint32 *, Uint32, Uint16)
76 
77 GSN_PRINT_SIGNATURE(printTCKEYREQ);
78 GSN_PRINT_SIGNATURE(printTCKEYCONF);
79 GSN_PRINT_SIGNATURE(printTCKEYREF);
80 GSN_PRINT_SIGNATURE(printLQHKEYREQ);
81 GSN_PRINT_SIGNATURE(printLQHKEYCONF);
82 GSN_PRINT_SIGNATURE(printLQHKEYREF);
83 GSN_PRINT_SIGNATURE(printTUPKEYREQ);
84 GSN_PRINT_SIGNATURE(printTUPKEYCONF);
85 GSN_PRINT_SIGNATURE(printTUPKEYREF);
86 GSN_PRINT_SIGNATURE(printTUPCOMMITREQ);
87 GSN_PRINT_SIGNATURE(printCONTINUEB);
88 GSN_PRINT_SIGNATURE(printFSOPENREQ);
89 GSN_PRINT_SIGNATURE(printFSCLOSEREQ);
90 GSN_PRINT_SIGNATURE(printFSREADWRITEREQ);
91 GSN_PRINT_SIGNATURE(printFSREADWRITEREQ);
92 GSN_PRINT_SIGNATURE(printFSREF);
93 GSN_PRINT_SIGNATURE(printFSREF);
94 GSN_PRINT_SIGNATURE(printFSREF);
95 GSN_PRINT_SIGNATURE(printFSREF);
96 GSN_PRINT_SIGNATURE(printFSREF);
97 GSN_PRINT_SIGNATURE(printFSCONF);
98 GSN_PRINT_SIGNATURE(printFSCONF);
99 GSN_PRINT_SIGNATURE(printFSCONF);
100 GSN_PRINT_SIGNATURE(printFSCONF);
101 GSN_PRINT_SIGNATURE(printFSCONF);
102 GSN_PRINT_SIGNATURE(printCLOSECOMREQCONF);
103 GSN_PRINT_SIGNATURE(printCLOSECOMREQCONF);
104 GSN_PRINT_SIGNATURE(printPACKED_SIGNAL);
105 GSN_PRINT_SIGNATURE(printPREPFAILREQREF);
106 GSN_PRINT_SIGNATURE(printPREPFAILREQREF);
107 GSN_PRINT_SIGNATURE(printALTER_TABLE_REQ);
108 GSN_PRINT_SIGNATURE(printALTER_TABLE_CONF);
109 GSN_PRINT_SIGNATURE(printALTER_TABLE_REF);
110 GSN_PRINT_SIGNATURE(printALTER_TAB_REQ);
111 GSN_PRINT_SIGNATURE(printALTER_TAB_CONF);
112 GSN_PRINT_SIGNATURE(printALTER_TAB_REF);
113 GSN_PRINT_SIGNATURE(printCREATE_TRIG_REQ);
114 GSN_PRINT_SIGNATURE(printCREATE_TRIG_CONF);
115 GSN_PRINT_SIGNATURE(printCREATE_TRIG_REF);
116 GSN_PRINT_SIGNATURE(printALTER_TRIG_REQ);
117 GSN_PRINT_SIGNATURE(printALTER_TRIG_CONF);
118 GSN_PRINT_SIGNATURE(printALTER_TRIG_REF);
119 GSN_PRINT_SIGNATURE(printDROP_TRIG_REQ);
120 GSN_PRINT_SIGNATURE(printDROP_TRIG_CONF);
121 GSN_PRINT_SIGNATURE(printDROP_TRIG_REF);
122 GSN_PRINT_SIGNATURE(printFIRE_TRIG_ORD);
123 GSN_PRINT_SIGNATURE(printTRIG_ATTRINFO);
124 GSN_PRINT_SIGNATURE(printCREATE_INDX_REQ);
125 GSN_PRINT_SIGNATURE(printCREATE_INDX_CONF);
126 GSN_PRINT_SIGNATURE(printCREATE_INDX_REF);
127 GSN_PRINT_SIGNATURE(printDROP_INDX_REQ);
128 GSN_PRINT_SIGNATURE(printDROP_INDX_CONF);
129 GSN_PRINT_SIGNATURE(printDROP_INDX_REF);
130 GSN_PRINT_SIGNATURE(printALTER_INDX_REQ);
131 GSN_PRINT_SIGNATURE(printALTER_INDX_CONF);
132 GSN_PRINT_SIGNATURE(printALTER_INDX_REF);
133 GSN_PRINT_SIGNATURE(printTCINDXREQ);
134 GSN_PRINT_SIGNATURE(printTCINDXCONF);
135 GSN_PRINT_SIGNATURE(printTCINDXREF);
136 GSN_PRINT_SIGNATURE(printINDXKEYINFO);
137 GSN_PRINT_SIGNATURE(printINDXATTRINFO);
138 GSN_PRINT_SIGNATURE(printFSAPPENDREQ);
139 GSN_PRINT_SIGNATURE(printBACKUP_REQ);
140 GSN_PRINT_SIGNATURE(printBACKUP_DATA);
141 GSN_PRINT_SIGNATURE(printBACKUP_REF);
142 GSN_PRINT_SIGNATURE(printBACKUP_CONF);
143 GSN_PRINT_SIGNATURE(printABORT_BACKUP_ORD);
144 GSN_PRINT_SIGNATURE(printBACKUP_ABORT_REP);
145 GSN_PRINT_SIGNATURE(printBACKUP_COMPLETE_REP);
146 GSN_PRINT_SIGNATURE(printBACKUP_NF_COMPLETE_REP);
147 GSN_PRINT_SIGNATURE(printDEFINE_BACKUP_REQ);
148 GSN_PRINT_SIGNATURE(printDEFINE_BACKUP_REF);
149 GSN_PRINT_SIGNATURE(printDEFINE_BACKUP_CONF);
150 GSN_PRINT_SIGNATURE(printSTART_BACKUP_REQ);
151 GSN_PRINT_SIGNATURE(printSTART_BACKUP_REF);
152 GSN_PRINT_SIGNATURE(printSTART_BACKUP_CONF);
153 GSN_PRINT_SIGNATURE(printBACKUP_FRAGMENT_REQ);
154 GSN_PRINT_SIGNATURE(printBACKUP_FRAGMENT_REF);
155 GSN_PRINT_SIGNATURE(printBACKUP_FRAGMENT_CONF);
156 GSN_PRINT_SIGNATURE(printSTOP_BACKUP_REQ);
157 GSN_PRINT_SIGNATURE(printSTOP_BACKUP_REF);
158 GSN_PRINT_SIGNATURE(printSTOP_BACKUP_CONF);
159 GSN_PRINT_SIGNATURE(printBACKUP_STATUS_REQ);
160 GSN_PRINT_SIGNATURE(printBACKUP_STATUS_CONF);
161 GSN_PRINT_SIGNATURE(printUTIL_SEQUENCE_REQ);
162 GSN_PRINT_SIGNATURE(printUTIL_SEQUENCE_REF);
163 GSN_PRINT_SIGNATURE(printUTIL_SEQUENCE_CONF);
164 GSN_PRINT_SIGNATURE(printUTIL_PREPARE_REQ);
165 GSN_PRINT_SIGNATURE(printUTIL_PREPARE_REF);
166 GSN_PRINT_SIGNATURE(printUTIL_PREPARE_CONF);
167 GSN_PRINT_SIGNATURE(printUTIL_EXECUTE_REQ);
168 GSN_PRINT_SIGNATURE(printUTIL_EXECUTE_REF);
169 GSN_PRINT_SIGNATURE(printUTIL_EXECUTE_CONF);
170 GSN_PRINT_SIGNATURE(printSCANTABREQ);
171 GSN_PRINT_SIGNATURE(printSCANTABCONF);
172 GSN_PRINT_SIGNATURE(printSCANTABREF);
173 GSN_PRINT_SIGNATURE(printSCANNEXTREQ);
174 GSN_PRINT_SIGNATURE(printSCANFRAGNEXTREQ);
175 GSN_PRINT_SIGNATURE(printLQH_FRAG_REQ);
176 GSN_PRINT_SIGNATURE(printLQH_FRAG_REF);
177 GSN_PRINT_SIGNATURE(printLQH_FRAG_CONF);
178 GSN_PRINT_SIGNATURE(printPREP_DROP_TAB_REQ);
179 GSN_PRINT_SIGNATURE(printPREP_DROP_TAB_REF);
180 GSN_PRINT_SIGNATURE(printPREP_DROP_TAB_CONF);
181 GSN_PRINT_SIGNATURE(printDROP_TAB_REQ);
182 GSN_PRINT_SIGNATURE(printDROP_TAB_REF);
183 GSN_PRINT_SIGNATURE(printDROP_TAB_CONF);
184 GSN_PRINT_SIGNATURE(printLCP_FRAG_ORD);
185 GSN_PRINT_SIGNATURE(printLCP_FRAG_REP);
186 GSN_PRINT_SIGNATURE(printLCP_COMPLETE_REP);
187 GSN_PRINT_SIGNATURE(printSTART_LCP_REQ);
188 GSN_PRINT_SIGNATURE(printSTART_LCP_CONF);
189 GSN_PRINT_SIGNATURE(printMASTER_LCP_REQ);
190 GSN_PRINT_SIGNATURE(printMASTER_LCP_REF);
191 GSN_PRINT_SIGNATURE(printMASTER_LCP_CONF);
192 GSN_PRINT_SIGNATURE(printCOPY_GCI_REQ);
193 GSN_PRINT_SIGNATURE(printSYSTEM_ERROR);
194 GSN_PRINT_SIGNATURE(printSTART_REC_REQ);
195 GSN_PRINT_SIGNATURE(printSTART_REC_CONF);
196 GSN_PRINT_SIGNATURE(printNF_COMPLETE_REP);
197 GSN_PRINT_SIGNATURE(printSIGNAL_DROPPED_REP);
198 GSN_PRINT_SIGNATURE(printFAIL_REP);
199 GSN_PRINT_SIGNATURE(printDISCONNECT_REP);
200 GSN_PRINT_SIGNATURE(printSUB_CREATE_REQ);
201 GSN_PRINT_SIGNATURE(printSUB_CREATE_CONF);
202 GSN_PRINT_SIGNATURE(printSUB_CREATE_REF);
203 GSN_PRINT_SIGNATURE(printSUB_REMOVE_REQ);
204 GSN_PRINT_SIGNATURE(printSUB_REMOVE_CONF);
205 GSN_PRINT_SIGNATURE(printSUB_REMOVE_REF);
206 GSN_PRINT_SIGNATURE(printSUB_START_REQ);
207 GSN_PRINT_SIGNATURE(printSUB_START_REF);
208 GSN_PRINT_SIGNATURE(printSUB_START_CONF);
209 GSN_PRINT_SIGNATURE(printSUB_STOP_REQ);
210 GSN_PRINT_SIGNATURE(printSUB_STOP_REF);
211 GSN_PRINT_SIGNATURE(printSUB_STOP_CONF);
212 GSN_PRINT_SIGNATURE(printSUB_SYNC_REQ);
213 GSN_PRINT_SIGNATURE(printSUB_SYNC_REF);
214 GSN_PRINT_SIGNATURE(printSUB_SYNC_CONF);
215 GSN_PRINT_SIGNATURE(printSUB_META_DATA);
216 GSN_PRINT_SIGNATURE(printSUB_TABLE_DATA);
217 GSN_PRINT_SIGNATURE(printSUB_SYNC_CONTINUE_REQ);
218 GSN_PRINT_SIGNATURE(printSUB_SYNC_CONTINUE_REF);
219 GSN_PRINT_SIGNATURE(printSUB_SYNC_CONTINUE_CONF);
220 GSN_PRINT_SIGNATURE(printSUB_GCP_COMPLETE_REP);
221 GSN_PRINT_SIGNATURE(printCREATE_FRAGMENTATION_REQ);
222 GSN_PRINT_SIGNATURE(printCREATE_FRAGMENTATION_REF);
223 GSN_PRINT_SIGNATURE(printCREATE_FRAGMENTATION_CONF);
224 GSN_PRINT_SIGNATURE(printUTIL_CREATE_LOCK_REQ);
225 GSN_PRINT_SIGNATURE(printUTIL_CREATE_LOCK_REF);
226 GSN_PRINT_SIGNATURE(printUTIL_CREATE_LOCK_CONF);
227 GSN_PRINT_SIGNATURE(printUTIL_DESTROY_LOCK_REQ);
228 GSN_PRINT_SIGNATURE(printUTIL_DESTROY_LOCK_REF);
229 GSN_PRINT_SIGNATURE(printUTIL_DESTROY_LOCK_CONF);
230 GSN_PRINT_SIGNATURE(printUTIL_LOCK_REQ);
231 GSN_PRINT_SIGNATURE(printUTIL_LOCK_REF);
232 GSN_PRINT_SIGNATURE(printUTIL_LOCK_CONF);
233 GSN_PRINT_SIGNATURE(printUTIL_UNLOCK_REQ);
234 GSN_PRINT_SIGNATURE(printUTIL_UNLOCK_REF);
235 GSN_PRINT_SIGNATURE(printUTIL_UNLOCK_CONF);
236 GSN_PRINT_SIGNATURE(printCNTR_START_REQ);
237 GSN_PRINT_SIGNATURE(printCNTR_START_REF);
238 GSN_PRINT_SIGNATURE(printCNTR_START_CONF);
239 GSN_PRINT_SIGNATURE(printREAD_NODES_CONF);
240 GSN_PRINT_SIGNATURE(printTUX_MAINT_REQ);
241 GSN_PRINT_SIGNATURE(printACC_LOCKREQ);
242 GSN_PRINT_SIGNATURE(printLQH_TRANSCONF);
243 GSN_PRINT_SIGNATURE(printSCAN_FRAGREQ);
244 GSN_PRINT_SIGNATURE(printSCAN_FRAGCONF);
245 
246 GSN_PRINT_SIGNATURE(printCONTINUEB_NDBFS);
247 GSN_PRINT_SIGNATURE(printCONTINUEB_DBDIH);
248 GSN_PRINT_SIGNATURE(printSTART_FRAG_REQ);
249 
250 GSN_PRINT_SIGNATURE(printSCHEMA_TRANS_BEGIN_REQ);
251 GSN_PRINT_SIGNATURE(printSCHEMA_TRANS_BEGIN_CONF);
252 GSN_PRINT_SIGNATURE(printSCHEMA_TRANS_BEGIN_REF);
253 GSN_PRINT_SIGNATURE(printSCHEMA_TRANS_END_REQ);
254 GSN_PRINT_SIGNATURE(printSCHEMA_TRANS_END_CONF);
255 GSN_PRINT_SIGNATURE(printSCHEMA_TRANS_END_REF);
256 GSN_PRINT_SIGNATURE(printSCHEMA_TRANS_END_REP);
257 GSN_PRINT_SIGNATURE(printSCHEMA_TRANS_IMPL_REQ);
258 GSN_PRINT_SIGNATURE(printSCHEMA_TRANS_IMPL_CONF);
259 GSN_PRINT_SIGNATURE(printSCHEMA_TRANS_IMPL_REF);
260 GSN_PRINT_SIGNATURE(printCREATE_TAB_REQ);
261 GSN_PRINT_SIGNATURE(printCREATE_TAB_CONF);
262 GSN_PRINT_SIGNATURE(printCREATE_TAB_REF);
263 GSN_PRINT_SIGNATURE(printCREATE_TABLE_REQ);
264 GSN_PRINT_SIGNATURE(printCREATE_TABLE_CONF);
265 GSN_PRINT_SIGNATURE(printCREATE_TABLE_REF);
266 GSN_PRINT_SIGNATURE(printDROP_TABLE_REQ);
267 GSN_PRINT_SIGNATURE(printDROP_TABLE_REF);
268 GSN_PRINT_SIGNATURE(printDROP_TABLE_CONF);
269 
270 GSN_PRINT_SIGNATURE(printGET_TABINFO_REQ);
271 GSN_PRINT_SIGNATURE(printGET_TABINFO_REF);
272 GSN_PRINT_SIGNATURE(printGET_TABINFO_CONF);
273 
274 GSN_PRINT_SIGNATURE(printCREATE_TRIG_IMPL_REQ);
275 GSN_PRINT_SIGNATURE(printCREATE_TRIG_IMPL_CONF);
276 GSN_PRINT_SIGNATURE(printCREATE_TRIG_IMPL_REF);
277 GSN_PRINT_SIGNATURE(printDROP_TRIG_IMPL_REQ);
278 GSN_PRINT_SIGNATURE(printDROP_TRIG_IMPL_CONF);
279 GSN_PRINT_SIGNATURE(printDROP_TRIG_IMPL_REF);
280 GSN_PRINT_SIGNATURE(printALTER_TRIG_IMPL_REQ);
281 GSN_PRINT_SIGNATURE(printALTER_TRIG_IMPL_CONF);
282 GSN_PRINT_SIGNATURE(printALTER_TRIG_IMPL_REF);
283 
284 GSN_PRINT_SIGNATURE(printCREATE_INDX_IMPL_REQ);
285 GSN_PRINT_SIGNATURE(printCREATE_INDX_IMPL_CONF);
286 GSN_PRINT_SIGNATURE(printCREATE_INDX_IMPL_REF);
287 GSN_PRINT_SIGNATURE(printDROP_INDX_IMPL_REQ);
288 GSN_PRINT_SIGNATURE(printDROP_INDX_IMPL_CONF);
289 GSN_PRINT_SIGNATURE(printDROP_INDX_IMPL_REF);
290 GSN_PRINT_SIGNATURE(printALTER_INDX_IMPL_REQ);
291 GSN_PRINT_SIGNATURE(printALTER_INDX_IMPL_CONF);
292 GSN_PRINT_SIGNATURE(printALTER_INDX_IMPL_REF);
293 
294 GSN_PRINT_SIGNATURE(printBUILD_INDX_REQ);
295 GSN_PRINT_SIGNATURE(printBUILD_INDX_CONF);
296 GSN_PRINT_SIGNATURE(printBUILD_INDX_REF);
297 GSN_PRINT_SIGNATURE(printBUILD_INDX_IMPL_REQ);
298 GSN_PRINT_SIGNATURE(printBUILD_INDX_IMPL_CONF);
299 GSN_PRINT_SIGNATURE(printBUILD_INDX_IMPL_REF);
300 
301 GSN_PRINT_SIGNATURE(printAPI_VERSION_REQ);
302 GSN_PRINT_SIGNATURE(printAPI_VERSION_CONF);
303 
304 GSN_PRINT_SIGNATURE(printLOCAL_ROUTE_ORD);
305 
306 GSN_PRINT_SIGNATURE(printDBINFO_SCAN);
307 GSN_PRINT_SIGNATURE(printDBINFO_SCAN_REF);
308 
309 GSN_PRINT_SIGNATURE(printNODE_PING_REQ);
310 GSN_PRINT_SIGNATURE(printNODE_PING_CONF);
311 
312 GSN_PRINT_SIGNATURE(printINDEX_STAT_REQ);
313 GSN_PRINT_SIGNATURE(printINDEX_STAT_CONF);
314 GSN_PRINT_SIGNATURE(printINDEX_STAT_REF);
315 GSN_PRINT_SIGNATURE(printINDEX_STAT_IMPL_REQ);
316 GSN_PRINT_SIGNATURE(printINDEX_STAT_IMPL_CONF);
317 GSN_PRINT_SIGNATURE(printINDEX_STAT_IMPL_REF);
318 GSN_PRINT_SIGNATURE(printINDEX_STAT_REP);
319 
320 GSN_PRINT_SIGNATURE(printGET_CONFIG_REQ);
321 GSN_PRINT_SIGNATURE(printGET_CONFIG_REF);
322 GSN_PRINT_SIGNATURE(printGET_CONFIG_CONF);
323 
324 #endif