Commit 582d3fed authored by jonas@perch.ndb.mysql.com's avatar jonas@perch.ndb.mysql.com

Merge joreland@bk-internal.mysql.com:/home/bk/mysql-5.1-new

into  perch.ndb.mysql.com:/home/jonas/src/mysql-5.1-new
parents edb9e3c9 cb6b9ee7
...@@ -1131,12 +1131,25 @@ Cmvmi::execDUMP_STATE_ORD(Signal* signal) ...@@ -1131,12 +1131,25 @@ Cmvmi::execDUMP_STATE_ORD(Signal* signal)
return; return;
} }
if (dumpState->args[0] == DumpStateOrd::CmvmiSetRestartOnErrorInsert){ if (dumpState->args[0] == DumpStateOrd::CmvmiSetRestartOnErrorInsert)
{
if(signal->getLength() == 1) if(signal->getLength() == 1)
m_ctx.m_config.setRestartOnErrorInsert((int)NRT_NoStart_Restart); {
Uint32 val = (Uint32)NRT_NoStart_Restart;
const ndb_mgm_configuration_iterator * p =
m_ctx.m_config.getOwnConfigIterator();
ndbrequire(p != 0);
if(!ndb_mgm_get_int_parameter(p, CFG_DB_STOP_ON_ERROR_INSERT, &val))
{
m_ctx.m_config.setRestartOnErrorInsert(val);
}
}
else else
{
m_ctx.m_config.setRestartOnErrorInsert(signal->theData[1]); m_ctx.m_config.setRestartOnErrorInsert(signal->theData[1]);
} }
}
if (dumpState->args[0] == DumpStateOrd::CmvmiTestLongSigWithDelay) { if (dumpState->args[0] == DumpStateOrd::CmvmiTestLongSigWithDelay) {
unsigned i; unsigned i;
......
...@@ -433,6 +433,11 @@ int runBug15587(NDBT_Context* ctx, NDBT_Step* step){ ...@@ -433,6 +433,11 @@ int runBug15587(NDBT_Context* ctx, NDBT_Step* step){
if (restarter.waitNodesNoStart(&nodeId, 1)) if (restarter.waitNodesNoStart(&nodeId, 1))
return NDBT_FAILED; return NDBT_FAILED;
int val2[] = { DumpStateOrd::CmvmiSetRestartOnErrorInsert, 1 };
if (restarter.dumpStateOneNode(nodeId, val2, 2))
return NDBT_FAILED;
if (restarter.dumpStateOneNode(nodeId, dump, 2)) if (restarter.dumpStateOneNode(nodeId, dump, 2))
return NDBT_FAILED; return NDBT_FAILED;
...@@ -444,6 +449,9 @@ int runBug15587(NDBT_Context* ctx, NDBT_Step* step){ ...@@ -444,6 +449,9 @@ int runBug15587(NDBT_Context* ctx, NDBT_Step* step){
if (restarter.waitNodesNoStart(&nodeId, 1)) if (restarter.waitNodesNoStart(&nodeId, 1))
return NDBT_FAILED; return NDBT_FAILED;
if (restarter.dumpStateOneNode(nodeId, val2, 1))
return NDBT_FAILED;
if (restarter.startNodes(&nodeId, 1)) if (restarter.startNodes(&nodeId, 1))
return NDBT_FAILED; return NDBT_FAILED;
...@@ -626,6 +634,10 @@ runBug18414(NDBT_Context* ctx, NDBT_Step* step){ ...@@ -626,6 +634,10 @@ runBug18414(NDBT_Context* ctx, NDBT_Step* step){
goto err; goto err;
} }
int val2[] = { DumpStateOrd::CmvmiSetRestartOnErrorInsert, 1 };
if (restarter.dumpStateOneNode(node2, val2, 2))
goto err;
if (restarter.insertErrorInNode(node2, 5003)) if (restarter.insertErrorInNode(node2, 5003))
goto err; goto err;
......
...@@ -291,8 +291,8 @@ NdbBackup::NF(NdbRestarter& _restarter, int *NFDuringBackup_codes, const int sz, ...@@ -291,8 +291,8 @@ NdbBackup::NF(NdbRestarter& _restarter, int *NFDuringBackup_codes, const int sz,
<< masterNodeId << endl; << masterNodeId << endl;
int val = DumpStateOrd::CmvmiSetRestartOnErrorInsert; int val[] = { DumpStateOrd::CmvmiSetRestartOnErrorInsert, 1 };
CHECK(_restarter.dumpStateOneNode(nodeId, &val, 1) == 0, CHECK(_restarter.dumpStateOneNode(nodeId, val, 2) == 0,
"failed to set RestartOnErrorInsert"); "failed to set RestartOnErrorInsert");
CHECK(_restarter.insertErrorInNode(nodeId, error) == 0, CHECK(_restarter.insertErrorInNode(nodeId, error) == 0,
"failed to set error insert"); "failed to set error insert");
......
...@@ -641,8 +641,8 @@ int restartNFDuringNR(NdbRestarter& _restarter, ...@@ -641,8 +641,8 @@ int restartNFDuringNR(NdbRestarter& _restarter,
CHECK(_restarter.waitNodesNoStart(&nodeId, 1) == 0, CHECK(_restarter.waitNodesNoStart(&nodeId, 1) == 0,
"waitNodesNoStart failed"); "waitNodesNoStart failed");
int val = DumpStateOrd::CmvmiSetRestartOnErrorInsert; int val[] = { DumpStateOrd::CmvmiSetRestartOnErrorInsert, 1 } ;
CHECK(_restarter.dumpStateOneNode(nodeId, &val, 1) == 0, CHECK(_restarter.dumpStateOneNode(nodeId, val, 2) == 0,
"failed to set RestartOnErrorInsert"); "failed to set RestartOnErrorInsert");
CHECK(_restarter.insertErrorInNode(nodeId, error) == 0, CHECK(_restarter.insertErrorInNode(nodeId, error) == 0,
...@@ -698,8 +698,8 @@ int restartNFDuringNR(NdbRestarter& _restarter, ...@@ -698,8 +698,8 @@ int restartNFDuringNR(NdbRestarter& _restarter,
CHECK(_restarter.waitNodesNoStart(&nodeId, 1) == 0, CHECK(_restarter.waitNodesNoStart(&nodeId, 1) == 0,
"waitNodesNoStart failed"); "waitNodesNoStart failed");
int val = DumpStateOrd::CmvmiSetRestartOnErrorInsert; int val[] = { DumpStateOrd::CmvmiSetRestartOnErrorInsert, 1 };
CHECK(_restarter.dumpStateOneNode(crashNodeId, &val, 2) == 0, CHECK(_restarter.dumpStateOneNode(crashNodeId, val, 2) == 0,
"failed to set RestartOnErrorInsert"); "failed to set RestartOnErrorInsert");
CHECK(_restarter.insertErrorInNode(crashNodeId, error) == 0, CHECK(_restarter.insertErrorInNode(crashNodeId, error) == 0,
...@@ -771,8 +771,8 @@ int restartNodeDuringLCP(NdbRestarter& _restarter, ...@@ -771,8 +771,8 @@ int restartNodeDuringLCP(NdbRestarter& _restarter,
<< " error code = " << error << endl; << " error code = " << error << endl;
{ {
int val = DumpStateOrd::CmvmiSetRestartOnErrorInsert; int val[] = { DumpStateOrd::CmvmiSetRestartOnErrorInsert, 1 };
CHECK(_restarter.dumpStateAllNodes(&val, 1) == 0, CHECK(_restarter.dumpStateAllNodes(val, 2) == 0,
"failed to set RestartOnErrorInsert"); "failed to set RestartOnErrorInsert");
} }
...@@ -812,8 +812,8 @@ int restartNodeDuringLCP(NdbRestarter& _restarter, ...@@ -812,8 +812,8 @@ int restartNodeDuringLCP(NdbRestarter& _restarter,
ndbout << _restart->m_name << " restarting non-master node = " << nodeId ndbout << _restart->m_name << " restarting non-master node = " << nodeId
<< " error code = " << error << endl; << " error code = " << error << endl;
int val = DumpStateOrd::CmvmiSetRestartOnErrorInsert; int val[] = { DumpStateOrd::CmvmiSetRestartOnErrorInsert, 1 };
CHECK(_restarter.dumpStateAllNodes(&val, 1) == 0, CHECK(_restarter.dumpStateAllNodes(val, 2) == 0,
"failed to set RestartOnErrorInsert"); "failed to set RestartOnErrorInsert");
CHECK(_restarter.insertErrorInNode(nodeId, error) == 0, CHECK(_restarter.insertErrorInNode(nodeId, error) == 0,
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment