1
/* Copyright (C) 2003 MySQL AB
3
This program is free software; you can redistribute it and/or modify
4
it under the terms of the GNU General Public License as published by
5
the Free Software Foundation; version 2 of the License.
7
This program is distributed in the hope that it will be useful,
8
but WITHOUT ANY WARRANTY; without even the implied warranty of
9
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
10
GNU General Public License for more details.
12
You should have received a copy of the GNU General Public License
13
along with this program; if not, write to the Free Software
14
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */
19
#include "Ndbcntr.hpp"
20
#include <ndb_limits.h>
22
#define DEBUG(x) { ndbout << "Ndbcntr::" << x << endl; }
25
void Ndbcntr::initData()
31
// Records with constant sizes
32
ndbBlocksRec = new NdbBlocksRec[ZSIZE_NDB_BLOCKS_REC];
33
}//Ndbcntr::initData()
35
void Ndbcntr::initRecords()
37
// Records with dynamic sizes
38
}//Ndbcntr::initRecords()
40
Ndbcntr::Ndbcntr(Block_context& ctx):
41
SimulatedBlock(NDBCNTR, ctx),
48
BLOCK_CONSTRUCTOR(Ndbcntr);
51
addRecSignal(GSN_CONTINUEB, &Ndbcntr::execCONTINUEB);
52
addRecSignal(GSN_READ_NODESCONF, &Ndbcntr::execREAD_NODESCONF);
53
addRecSignal(GSN_READ_NODESREF, &Ndbcntr::execREAD_NODESREF);
54
addRecSignal(GSN_CM_ADD_REP, &Ndbcntr::execCM_ADD_REP);
55
addRecSignal(GSN_CNTR_START_REQ, &Ndbcntr::execCNTR_START_REQ);
56
addRecSignal(GSN_CNTR_START_REF, &Ndbcntr::execCNTR_START_REF);
57
addRecSignal(GSN_CNTR_START_CONF, &Ndbcntr::execCNTR_START_CONF);
58
addRecSignal(GSN_CNTR_WAITREP, &Ndbcntr::execCNTR_WAITREP);
59
addRecSignal(GSN_CNTR_START_REP, &Ndbcntr::execCNTR_START_REP);
60
addRecSignal(GSN_API_START_REP, &Ndbcntr::execAPI_START_REP, true);
61
addRecSignal(GSN_NODE_FAILREP, &Ndbcntr::execNODE_FAILREP);
62
addRecSignal(GSN_SYSTEM_ERROR , &Ndbcntr::execSYSTEM_ERROR);
65
addRecSignal(GSN_DUMP_STATE_ORD, &Ndbcntr::execDUMP_STATE_ORD);
66
addRecSignal(GSN_READ_CONFIG_REQ, &Ndbcntr::execREAD_CONFIG_REQ);
67
addRecSignal(GSN_STTOR, &Ndbcntr::execSTTOR);
68
addRecSignal(GSN_TCSEIZECONF, &Ndbcntr::execTCSEIZECONF);
69
addRecSignal(GSN_TCSEIZEREF, &Ndbcntr::execTCSEIZEREF);
70
addRecSignal(GSN_TCRELEASECONF, &Ndbcntr::execTCRELEASECONF);
71
addRecSignal(GSN_TCRELEASEREF, &Ndbcntr::execTCRELEASEREF);
72
addRecSignal(GSN_TCKEYCONF, &Ndbcntr::execTCKEYCONF);
73
addRecSignal(GSN_TCKEYREF, &Ndbcntr::execTCKEYREF);
74
addRecSignal(GSN_TCROLLBACKREP, &Ndbcntr::execTCROLLBACKREP);
75
addRecSignal(GSN_GETGCICONF, &Ndbcntr::execGETGCICONF);
76
addRecSignal(GSN_DIH_RESTARTCONF, &Ndbcntr::execDIH_RESTARTCONF);
77
addRecSignal(GSN_DIH_RESTARTREF, &Ndbcntr::execDIH_RESTARTREF);
78
addRecSignal(GSN_CREATE_TABLE_REF, &Ndbcntr::execCREATE_TABLE_REF);
79
addRecSignal(GSN_CREATE_TABLE_CONF, &Ndbcntr::execCREATE_TABLE_CONF);
80
addRecSignal(GSN_NDB_STTORRY, &Ndbcntr::execNDB_STTORRY);
81
addRecSignal(GSN_NDB_STARTCONF, &Ndbcntr::execNDB_STARTCONF);
82
addRecSignal(GSN_READ_NODESREQ, &Ndbcntr::execREAD_NODESREQ);
83
addRecSignal(GSN_NDB_STARTREF, &Ndbcntr::execNDB_STARTREF);
85
addRecSignal(GSN_STOP_PERM_REF, &Ndbcntr::execSTOP_PERM_REF);
86
addRecSignal(GSN_STOP_PERM_CONF, &Ndbcntr::execSTOP_PERM_CONF);
88
addRecSignal(GSN_STOP_ME_REF, &Ndbcntr::execSTOP_ME_REF);
89
addRecSignal(GSN_STOP_ME_CONF, &Ndbcntr::execSTOP_ME_CONF);
91
addRecSignal(GSN_STOP_REQ, &Ndbcntr::execSTOP_REQ);
92
addRecSignal(GSN_STOP_CONF, &Ndbcntr::execSTOP_CONF);
93
addRecSignal(GSN_RESUME_REQ, &Ndbcntr::execRESUME_REQ);
95
addRecSignal(GSN_WAIT_GCP_REF, &Ndbcntr::execWAIT_GCP_REF);
96
addRecSignal(GSN_WAIT_GCP_CONF, &Ndbcntr::execWAIT_GCP_CONF);
97
addRecSignal(GSN_CHANGE_NODE_STATE_CONF,
98
&Ndbcntr::execCHANGE_NODE_STATE_CONF);
100
addRecSignal(GSN_ABORT_ALL_REF, &Ndbcntr::execABORT_ALL_REF);
101
addRecSignal(GSN_ABORT_ALL_CONF, &Ndbcntr::execABORT_ALL_CONF);
103
addRecSignal(GSN_START_ORD, &Ndbcntr::execSTART_ORD);
104
addRecSignal(GSN_STTORRY, &Ndbcntr::execSTTORRY);
105
addRecSignal(GSN_READ_CONFIG_CONF, &Ndbcntr::execREAD_CONFIG_CONF);
107
addRecSignal(GSN_FSREMOVECONF, &Ndbcntr::execFSREMOVECONF);
110
ctypeOfStart = NodeState::ST_ILLEGAL_TYPE;
111
c_start.m_startTime = NdbTick_CurrentMillisecond();
112
}//Ndbcntr::Ndbcntr()
116
delete []ndbBlocksRec;
118
}//Ndbcntr::~Ndbcntr()
120
BLOCK_FUNCTIONS(Ndbcntr)