summaryrefslogtreecommitdiff
path: root/storage/ndb/src/kernel/blocks/qmgr/QmgrMain.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'storage/ndb/src/kernel/blocks/qmgr/QmgrMain.cpp')
-rw-r--r--storage/ndb/src/kernel/blocks/qmgr/QmgrMain.cpp32
1 files changed, 27 insertions, 5 deletions
diff --git a/storage/ndb/src/kernel/blocks/qmgr/QmgrMain.cpp b/storage/ndb/src/kernel/blocks/qmgr/QmgrMain.cpp
index 4d7ed288592..76281426eea 100644
--- a/storage/ndb/src/kernel/blocks/qmgr/QmgrMain.cpp
+++ b/storage/ndb/src/kernel/blocks/qmgr/QmgrMain.cpp
@@ -166,6 +166,27 @@ void Qmgr::execPRES_TOREQ(Signal* signal)
return;
}//Qmgr::execPRES_TOREQ()
+void
+Qmgr::execREAD_CONFIG_REQ(Signal* signal)
+{
+ jamEntry();
+
+ const ReadConfigReq * req = (ReadConfigReq*)signal->getDataPtr();
+
+ Uint32 ref = req->senderRef;
+ Uint32 senderData = req->senderData;
+
+ const ndb_mgm_configuration_iterator * p =
+ theConfiguration.getOwnConfigIterator();
+ ndbrequire(p != 0);
+
+ ReadConfigConf * conf = (ReadConfigConf*)signal->getDataPtrSend();
+ conf->senderRef = reference();
+ conf->senderData = senderData;
+ sendSignal(ref, GSN_READ_CONFIG_CONF, signal,
+ ReadConfigConf::SignalLength, JBB);
+}
+
/*
4.2 ADD NODE MODULE*/
/*##########################################################################*/
@@ -700,11 +721,11 @@ void Qmgr::execCM_REGREF(Signal* signal)
break;
case CmRegRef::ZNOT_IN_CFG:
jam();
- progError(__LINE__, ERR_NODE_NOT_IN_CONFIG);
+ progError(__LINE__, NDBD_EXIT_NODE_NOT_IN_CONFIG);
break;
case CmRegRef::ZNOT_DEAD:
jam();
- progError(__LINE__, ERR_NODE_NOT_DEAD);
+ progError(__LINE__, NDBD_EXIT_NODE_NOT_DEAD);
break;
case CmRegRef::ZELECTION:
jam();
@@ -2683,7 +2704,7 @@ void Qmgr::systemErrorBecauseOtherNodeFailed(Signal* signal, Uint32 line,
"Node was shutdown during startup because node %d failed",
failedNodeId);
- progError(line, ERR_SR_OTHERNODEFAILED, buf);
+ progError(line, NDBD_EXIT_SR_OTHERNODEFAILED, buf);
}
@@ -2695,7 +2716,7 @@ void Qmgr::systemErrorLab(Signal* signal, Uint32 line, const char * message)
// If it's known why shutdown occured
// an error message has been passed to this function
- progError(line, 0, message);
+ progError(line, NDBD_EXIT_NDBREQUIRE, message);
return;
}//Qmgr::systemErrorLab()
@@ -3789,7 +3810,8 @@ Qmgr::stateArbitCrash(Signal* signal)
if (! (arbitRec.getTimediff() > getArbitTimeout()))
return;
#endif
- progError(__LINE__, ERR_ARBIT_SHUTDOWN, "Arbitrator decided to shutdown this node");
+ progError(__LINE__, NDBD_EXIT_ARBIT_SHUTDOWN,
+ "Arbitrator decided to shutdown this node");
}
/**