Below is the list of changes that have just been committed into a local
5.1 repository of pekka. When pekka does a push these changes will
be propagated to the main repository and, within 24 hours after the
push, to the public repository.
For information on how to access the public repository
see http://dev.mysql.com/doc/mysql/en/installing-source-tree.html
ChangeSet@stripped, 2007-02-04 22:44:50+01:00, pekka@stripped +10 -0
ndb - wl#3600 catch sub-op parse errors
storage/ndb/include/kernel/signaldata/AlterTable.hpp@stripped, 2007-02-04 22:43:47+01:00, pekka@stripped +1 -1
wl#3600 catch sub-op parse errors
storage/ndb/include/kernel/signaldata/CreateTable.hpp@stripped, 2007-02-04 22:43:48+01:00, pekka@stripped +1 -1
wl#3600 catch sub-op parse errors
storage/ndb/src/common/debugger/signaldata/AlterTable.cpp@stripped, 2007-02-04 22:43:48+01:00, pekka@stripped +3 -1
wl#3600 catch sub-op parse errors
storage/ndb/src/common/debugger/signaldata/AlterTrig.cpp@stripped, 2007-02-04 22:43:48+01:00, pekka@stripped +4 -4
wl#3600 catch sub-op parse errors
storage/ndb/src/common/debugger/signaldata/AlterTrigImpl.cpp@stripped, 2007-02-04 22:43:48+01:00, pekka@stripped +4 -4
wl#3600 catch sub-op parse errors
storage/ndb/src/common/debugger/signaldata/CreateTab.cpp@stripped, 2007-02-04 22:43:48+01:00, pekka@stripped +4 -4
wl#3600 catch sub-op parse errors
storage/ndb/src/common/debugger/signaldata/CreateTable.cpp@stripped, 2007-02-04 22:43:48+01:00, pekka@stripped +1 -1
wl#3600 catch sub-op parse errors
storage/ndb/src/kernel/blocks/ERROR_codes.txt@stripped, 2007-02-04 22:43:48+01:00, pekka@stripped +8 -0
wl#3600 catch sub-op parse errors
storage/ndb/src/kernel/blocks/dbdict/Dbdict.cpp@stripped, 2007-02-04 22:43:48+01:00, pekka@stripped +394 -230
wl#3600 catch sub-op parse errors
storage/ndb/src/kernel/blocks/dbdict/Dbdict.hpp@stripped, 2007-02-04 22:43:48+01:00, pekka@stripped +13 -14
wl#3600 catch sub-op parse errors
# This is a BitKeeper patch. What follows are the unified diffs for the
# set of deltas contained in the patch. The rest of the patch, the part
# that BitKeeper cares about, is below these diffs.
# User: pekka
# Host: clam.(none)
# Root: /export/space/pekka/ndb/version/my52-wl3600-b
--- 1.11/storage/ndb/include/kernel/signaldata/AlterTable.hpp 2007-01-30 12:32:11 +01:00
+++ 1.12/storage/ndb/include/kernel/signaldata/AlterTable.hpp 2007-02-04 22:43:47 +01:00
@@ -225,8 +225,8 @@
Uint32 errorLine;
Uint32 errorNodeId;
Uint32 masterNodeId;
+ Uint32 errorStatus;
Uint32 errorKey;
- Uint32 status;
public:
Uint32 getErrorCode() const {
--- 1.11/storage/ndb/include/kernel/signaldata/CreateTable.hpp 2007-01-10 16:23:04 +01:00
+++ 1.12/storage/ndb/include/kernel/signaldata/CreateTable.hpp 2007-02-04 22:43:48 +01:00
@@ -107,7 +107,7 @@
Uint32 errorLine;
Uint32 errorNodeId;
Uint32 masterNodeId;
- Uint32 status;
+ Uint32 errorStatus;
Uint32 errorKey;
public:
--- 1.3/storage/ndb/src/common/debugger/signaldata/AlterTable.cpp 2007-01-30 12:32:11 +01:00
+++ 1.4/storage/ndb/src/common/debugger/signaldata/AlterTable.cpp 2007-02-04 22:43:48 +01:00
@@ -58,7 +58,9 @@
fprintf(output, " errorLine: %u", sig-> errorLine);
fprintf(output, " errorNodeId: %u", sig->errorNodeId);
fprintf(output, " masterNodeId: %u", sig->masterNodeId);
+ fprintf(output, "\n");
+ fprintf(output, " errorStatus: %u", sig->errorStatus);
fprintf(output, " errorKey: %u", sig->errorKey);
- fprintf(output, " status: %u", sig->status);
+ fprintf(output, "\n");
return true;
}
--- 1.3/storage/ndb/src/common/debugger/signaldata/AlterTrig.cpp 2007-01-18 13:18:45 +01:00
+++ 1.4/storage/ndb/src/common/debugger/signaldata/AlterTrig.cpp 2007-02-04 22:43:48 +01:00
@@ -62,10 +62,10 @@
fprintf(output, " tableId: %x", sig->tableId);
fprintf(output, " triggerId: %x", sig->triggerId);
fprintf(output, "\n");
- fprintf(output, " errorCode: %x", sig->errorCode);
- fprintf(output, " errorLine: %x", sig->errorLine);
- fprintf(output, " errorNodeId: %x", sig->errorNodeId);
- fprintf(output, " masterNodeId: %x", sig->masterNodeId);
+ fprintf(output, " errorCode: %u", sig->errorCode);
+ fprintf(output, " errorLine: %u", sig->errorLine);
+ fprintf(output, " errorNodeId: %u", sig->errorNodeId);
+ fprintf(output, " masterNodeId: %u", sig->masterNodeId);
fprintf(output, "\n");
return true;
}
--- 1.31/storage/ndb/src/kernel/blocks/ERROR_codes.txt 2006-12-05 15:10:54 +01:00
+++ 1.32/storage/ndb/src/kernel/blocks/ERROR_codes.txt 2007-02-04 22:43:48 +01:00
@@ -458,6 +458,14 @@
4013: verify TUP tab descr before and after next DROP TABLE
+Dict transactions
+-----------------
+
+These can be applied e.g. before index create and before index drop:
+
+6101: Fail alter trigger parse in master
+6102: Fail alter trigger parse in slave
+
System Restart:
---------------
--- 1.144/storage/ndb/src/kernel/blocks/dbdict/Dbdict.cpp 2007-02-03 10:12:19 +01:00
+++ 1.145/storage/ndb/src/kernel/blocks/dbdict/Dbdict.cpp 2007-02-04 22:43:48 +01:00
@@ -4031,7 +4031,7 @@
ref->transId = req->transId;
ref->clientData = req->clientData;
getError(error, ref);
- ref->status = error.errorStatus;
+ ref->errorStatus = error.errorStatus;
ref->errorKey = error.errorKey;
sendSignal(req->clientRef, GSN_CREATE_TABLE_REF, signal,
@@ -4254,28 +4254,43 @@
}
void
-Dbdict::createTable_reply(Signal* signal, SchemaOpPtr op_ptr)
+Dbdict::createTable_reply(Signal* signal, SchemaOpPtr op_ptr, ErrorInfo error)
{
+ jam();
D("createTable_reply" << V(op_ptr.i) << *op_ptr.p);
SchemaTransPtr trans_ptr = op_ptr.p->m_trans_ptr;
- const OpInfo& info = getOpInfo(op_ptr);
CreateTableDataPtr createTabPtr;
getOpData(op_ptr, createTabPtr);
- CreateTableConf* conf = (CreateTableConf*)signal->getDataPtrSend();
- conf->senderRef = reference();
- conf->clientData = op_ptr.p->m_clientData;
- conf->transId = trans_ptr.p->m_transId;
- conf->tableId = createTabPtr.p->m_request.tableId;
- conf->tableVersion = createTabPtr.p->m_request.tableVersion;
-
- D(V(conf->tableId) << V(conf->tableVersion));
-
- Uint32 clientRef = op_ptr.p->m_clientRef;
- sendSignal(clientRef, GSN_CREATE_TABLE_CONF,
- signal, CreateTableConf::SignalLength, JBB);
+ if (!hasError(error)) {
+ CreateTableConf* conf = (CreateTableConf*)signal->getDataPtrSend();
+ conf->senderRef = reference();
+ conf->clientData = op_ptr.p->m_clientData;
+ conf->transId = trans_ptr.p->m_transId;
+ conf->tableId = createTabPtr.p->m_request.tableId;
+ conf->tableVersion = createTabPtr.p->m_request.tableVersion;
+
+ D(V(conf->tableId) << V(conf->tableVersion));
+
+ Uint32 clientRef = op_ptr.p->m_clientRef;
+ sendSignal(clientRef, GSN_CREATE_TABLE_CONF, signal,
+ CreateTableConf::SignalLength, JBB);
+ } else {
+ jam();
+ CreateTableRef* ref = (CreateTableRef*)signal->getDataPtrSend();
+ ref->senderRef = reference();
+ ref->clientData = op_ptr.p->m_clientData;
+ ref->transId = trans_ptr.p->m_transId;
+ getError(error, ref);
+ ref->errorStatus = error.errorStatus;
+ ref->errorKey = error.errorKey;
+
+ Uint32 clientRef = op_ptr.p->m_clientRef;
+ sendSignal(clientRef, GSN_CREATE_TABLE_REF, signal,
+ CreateTableRef::SignalLength, JBB);
+ }
}
void
@@ -6576,26 +6591,41 @@
}
void
-Dbdict::alterTable_reply(Signal* signal, SchemaOpPtr op_ptr)
+Dbdict::alterTable_reply(Signal* signal, SchemaOpPtr op_ptr, ErrorInfo error)
{
+ jam();
D("alterTable_reply" << V(op_ptr.i) << *op_ptr.p);
SchemaTransPtr trans_ptr = op_ptr.p->m_trans_ptr;
- const OpInfo& info = getOpInfo(op_ptr);
AlterTableDataPtr alterTabPtr;
getOpData(op_ptr, alterTabPtr);
- AlterTableConf* conf = (AlterTableConf*)signal->getDataPtrSend();
- conf->senderRef = reference();
- conf->clientData = op_ptr.p->m_clientData;
- conf->transId = trans_ptr.p->m_transId;
- conf->tableId = alterTabPtr.p->m_request.tableId;
- conf->tableVersion = alterTabPtr.p->m_request.tableVersion;
-
- Uint32 clientRef = op_ptr.p->m_clientRef;
- sendSignal(clientRef, GSN_ALTER_TABLE_CONF,
- signal, AlterTableConf::SignalLength, JBB);
+ if (!hasError(error)) {
+ AlterTableConf* conf = (AlterTableConf*)signal->getDataPtrSend();
+ conf->senderRef = reference();
+ conf->clientData = op_ptr.p->m_clientData;
+ conf->transId = trans_ptr.p->m_transId;
+ conf->tableId = alterTabPtr.p->m_request.tableId;
+ conf->tableVersion = alterTabPtr.p->m_request.tableVersion;
+
+ Uint32 clientRef = op_ptr.p->m_clientRef;
+ sendSignal(clientRef, GSN_ALTER_TABLE_CONF, signal,
+ AlterTableConf::SignalLength, JBB);
+ } else {
+ jam();
+ AlterTableRef* ref = (AlterTableRef*)signal->getDataPtrSend();
+ ref->senderRef = reference();
+ ref->clientData = op_ptr.p->m_clientData;
+ ref->transId = trans_ptr.p->m_transId;
+ getError(error, ref);
+ ref->errorStatus = error.errorStatus;
+ ref->errorKey = error.errorKey;
+
+ Uint32 clientRef = op_ptr.p->m_clientRef;
+ sendSignal(clientRef, GSN_ALTER_TABLE_REF, signal,
+ AlterTableRef::SignalLength, JBB);
+ }
}
void
@@ -7994,28 +8024,43 @@
}
void
-Dbdict::dropTable_reply(Signal* signal, SchemaOpPtr op_ptr)
+Dbdict::dropTable_reply(Signal* signal, SchemaOpPtr op_ptr, ErrorInfo error)
{
+ jam();
D("dropTable_reply" << V(op_ptr.i) << *op_ptr.p);
SchemaTransPtr trans_ptr = op_ptr.p->m_trans_ptr;
- const OpInfo& info = getOpInfo(op_ptr);
DropTableDataPtr dropTabPtr;
getOpData(op_ptr, dropTabPtr);
- DropTableConf* conf = (DropTableConf*)signal->getDataPtrSend();
- conf->senderRef = reference();
- conf->clientData = op_ptr.p->m_clientData;
- conf->transId = trans_ptr.p->m_transId;
- conf->tableId = dropTabPtr.p->m_request.tableId;
- conf->tableVersion = dropTabPtr.p->m_request.tableVersion;
-
- D(V(conf->tableId) << V(conf->tableVersion));
-
- Uint32 clientRef = op_ptr.p->m_clientRef;
- sendSignal(clientRef, GSN_DROP_TABLE_CONF,
- signal, DropTableConf::SignalLength, JBB);
+ if (!hasError(error)) {
+ DropTableConf* conf = (DropTableConf*)signal->getDataPtrSend();
+ conf->senderRef = reference();
+ conf->clientData = op_ptr.p->m_clientData;
+ conf->transId = trans_ptr.p->m_transId;
+ conf->tableId = dropTabPtr.p->m_request.tableId;
+ conf->tableVersion = dropTabPtr.p->m_request.tableVersion;
+
+ D(V(conf->tableId) << V(conf->tableVersion));
+
+ Uint32 clientRef = op_ptr.p->m_clientRef;
+ sendSignal(clientRef, GSN_DROP_TABLE_CONF, signal,
+ DropTableConf::SignalLength, JBB);
+ } else {
+ jam();
+ DropTableRef* ref = (DropTableRef*)signal->getDataPtrSend();
+ ref->senderRef = reference();
+ ref->clientData = op_ptr.p->m_clientData;
+ ref->transId = trans_ptr.p->m_transId;
+ ref->tableId = dropTabPtr.p->m_request.tableId;
+ ref->tableVersion = dropTabPtr.p->m_request.tableVersion;
+ getError(error, ref);
+
+ Uint32 clientRef = op_ptr.p->m_clientRef;
+ sendSignal(clientRef, GSN_DROP_TABLE_REF, signal,
+ DropTableRef::SignalLength, JBB);
+ }
}
void
@@ -9984,33 +10029,25 @@
findSchemaOp(op_ptr, createIndexPtr, op_key);
ndbrequire(!op_ptr.isNull());
SchemaTransPtr trans_ptr = op_ptr.p->m_trans_ptr;
+ CreateIndxImplReq* impl_req = &createIndexPtr.p->m_request;
- Uint32 errorCode = 0;
if (ret == 0) {
- jam();
const CreateTableConf* conf =
(const CreateTableConf*)signal->getDataPtr();
ndbrequire(conf->transId == trans_ptr.p->m_transId);
- createIndexPtr.p->m_request.indexId = conf->tableId;
- createIndexPtr.p->m_request.indexVersion = conf->tableVersion;
-
- D(V(conf->tableId));
-
+ impl_req->indexId = conf->tableId;
+ impl_req->indexVersion = conf->tableVersion;
createIndexPtr.p->m_sub_create_table = true;
+ createSubOps(signal, op_ptr);
} else {
- ndbrequire(false);//wl3600_todo
-
jam();
const CreateTableRef* ref =
(const CreateTableRef*)signal->getDataPtr();
-
- ndbrequire(ref->transId == trans_ptr.p->m_transId);
- ndbrequire(ref->errorCode != 0);
- errorCode = ref->errorCode;
+ ErrorInfo error;
+ setError(error, ref);
+ abortSubOps(signal, op_ptr, error);
}
-
- createSubOps(signal, op_ptr);
}
void
@@ -10051,44 +10088,62 @@
Uint32 errorCode = 0;
if (ret == 0) {
- jam();
const AlterIndxConf* conf =
(const AlterIndxConf*)signal->getDataPtr();
ndbrequire(conf->transId == trans_ptr.p->m_transId);
createIndexPtr.p->m_sub_alter_index = true;
+ createSubOps(signal, op_ptr);
} else {
jam();
- ndbrequire(false); //TODO
- }
+ const AlterIndxRef* ref =
+ (const AlterIndxRef*)signal->getDataPtr();
- createSubOps(signal, op_ptr);
+ ErrorInfo error;
+ setError(error, ref);
+ abortSubOps(signal, op_ptr, error);
+ }
}
void
-Dbdict::createIndex_reply(Signal* signal, SchemaOpPtr op_ptr)
+Dbdict::createIndex_reply(Signal* signal, SchemaOpPtr op_ptr, ErrorInfo error)
{
- const OpInfo& info = getOpInfo(op_ptr);
+ jam();
+ D("createIndex_reply");
SchemaTransPtr& trans_ptr = op_ptr.p->m_trans_ptr;
CreateIndexDataPtr createIndexPtr;
getOpData(op_ptr, createIndexPtr);
+ const CreateIndxImplReq* impl_req = &createIndexPtr.p->m_request;
TableRecordPtr indexPtr;
c_tableRecordPool.getPtr(indexPtr, createIndexPtr.p->m_request.indexId);
- CreateIndxConf* conf = (CreateIndxConf*)signal->getDataPtrSend();
- conf->senderRef = reference();
- conf->clientData = op_ptr.p->m_clientData;
- conf->transId = trans_ptr.p->m_transId;
- conf->indexId = indexPtr.p->tableId;
- conf->indexVersion = indexPtr.p->tableVersion;
-
- D("createIndex_reply" << V(conf->indexId) << V(conf->indexVersion));
-
- Uint32 clientRef = op_ptr.p->m_clientRef;
- sendSignal(clientRef, GSN_CREATE_INDX_CONF, signal,
- CreateIndxConf::SignalLength, JBB);
+ if (!hasError(error)) {
+ CreateIndxConf* conf = (CreateIndxConf*)signal->getDataPtrSend();
+ conf->senderRef = reference();
+ conf->clientData = op_ptr.p->m_clientData;
+ conf->transId = trans_ptr.p->m_transId;
+ conf->indexId = impl_req->indexId;
+ conf->indexVersion = impl_req->indexVersion;
+
+ D(V(conf->indexId) << V(conf->indexVersion));
+
+ Uint32 clientRef = op_ptr.p->m_clientRef;
+ sendSignal(clientRef, GSN_CREATE_INDX_CONF, signal,
+ CreateIndxConf::SignalLength, JBB);
+ } else {
+ jam();
+ CreateIndxRef* ref = (CreateIndxRef*)signal->getDataPtrSend();
+ ref->senderRef = reference();
+ ref->clientData = op_ptr.p->m_clientData;
+ ref->transId = trans_ptr.p->m_transId;
+ getError(error, ref);
+
+ Uint32 clientRef = op_ptr.p->m_clientRef;
+ sendSignal(clientRef, GSN_CREATE_INDX_REF, signal,
+ CreateIndxRef::SignalLength, JBB);
+ }
}
void
@@ -10951,28 +11006,44 @@
}
void
-Dbdict::dropIndex_reply(Signal* signal, SchemaOpPtr op_ptr)
+Dbdict::dropIndex_reply(Signal* signal, SchemaOpPtr op_ptr, ErrorInfo error)
{
+ jam();
D("dropIndex_reply" << V(op_ptr.i) << *op_ptr.p);
SchemaTransPtr trans_ptr = op_ptr.p->m_trans_ptr;
- const OpInfo& info = getOpInfo(op_ptr);
DropIndexDataPtr dropIndexPtr;
getOpData(op_ptr, dropIndexPtr);
+ const DropIndxImplReq* impl_req = &dropIndexPtr.p->m_request;
- DropIndxConf* conf = (DropIndxConf*)signal->getDataPtrSend();
- conf->senderRef = reference();
- conf->clientData = op_ptr.p->m_clientData;
- conf->transId = trans_ptr.p->m_transId;
- conf->indexId = dropIndexPtr.p->m_request.indexId;
- conf->indexVersion = dropIndexPtr.p->m_request.indexVersion;
-
- D(V(conf->indexId) << V(conf->indexVersion));
-
- Uint32 clientRef = op_ptr.p->m_clientRef;
- sendSignal(clientRef, GSN_DROP_INDX_CONF,
- signal, DropIndxConf::SignalLength, JBB);
+ if (!hasError(error)) {
+ DropIndxConf* conf = (DropIndxConf*)signal->getDataPtrSend();
+ conf->senderRef = reference();
+ conf->clientData = op_ptr.p->m_clientData;
+ conf->transId = trans_ptr.p->m_transId;
+ // wl3600_todo why send redundant fields?
+ conf->indexId = impl_req->indexId;
+ conf->indexVersion = impl_req->indexVersion;
+
+ Uint32 clientRef = op_ptr.p->m_clientRef;
+ sendSignal(clientRef, GSN_DROP_INDX_CONF, signal,
+ DropIndxConf::SignalLength, JBB);
+ } else {
+ jam();
+ DropIndxRef* ref = (DropIndxRef*)signal->getDataPtrSend();
+ ref->senderRef = reference();
+ ref->clientData = op_ptr.p->m_clientData;
+ ref->transId = trans_ptr.p->m_transId;
+ // wl3600_todo why send redundant fields?
+ ref->indexId = impl_req->indexId;
+ ref->indexVersion = impl_req->indexVersion;
+ getError(error, ref);
+
+ Uint32 clientRef = op_ptr.p->m_clientRef;
+ sendSignal(clientRef, GSN_DROP_INDX_REF, signal,
+ DropIndxRef::SignalLength, JBB);
+ }
}
void
@@ -11145,20 +11216,22 @@
ndbrequire(!op_ptr.isNull());
SchemaTransPtr trans_ptr = op_ptr.p->m_trans_ptr;
- Uint32 errorCode = 0;
if (ret == 0) {
- jam();
const AlterIndxConf* conf =
(const AlterIndxConf*)signal->getDataPtr();
ndbrequire(conf->transId == trans_ptr.p->m_transId);
dropIndexPtr.p->m_sub_alter_index = true;
+ createSubOps(signal, op_ptr);
} else {
jam();
- ndbrequire(false); //TODO
- }
+ const AlterIndxRef* ref =
+ (const AlterIndxRef*)signal->getDataPtr();
- createSubOps(signal, op_ptr);
+ ErrorInfo error;
+ setError(error, ref);
+ abortSubOps(signal, op_ptr, error);
+ }
#if wl3600_todo //remove
if (opPtr.p->hasError()) {
@@ -11206,7 +11279,6 @@
ndbrequire(!op_ptr.isNull());
SchemaTransPtr trans_ptr = op_ptr.p->m_trans_ptr;
- Uint32 errorCode = 0;
if (ret == 0) {
jam();
const DropTableConf* conf =
@@ -11214,19 +11286,15 @@
ndbrequire(conf->transId == trans_ptr.p->m_transId);
dropIndexPtr.p->m_sub_drop_table = true;
+ createSubOps(signal, op_ptr);
} else {
- ndbrequire(false);//wl3600_todo
-
jam();
const DropTableRef* ref =
(const DropTableRef*)signal->getDataPtr();
-
- ndbrequire(ref->transId == trans_ptr.p->m_transId);
- ndbrequire(ref->errorCode != 0);
- errorCode = ref->errorCode;
+ ErrorInfo error;
+ setError(error, ref);
+ abortSubOps(signal, op_ptr, error);
}
-
- createSubOps(signal, op_ptr);
}
void
@@ -14031,7 +14099,7 @@
void
Dbdict::alterIndex_fromCreateTrigger(Signal* signal, Uint32 op_key, Uint32 ret)
{
- D("alterIndex_fromCreateTrigger" << hex << V(op_key) << dec << V(ret));
+ jam();
SchemaOpPtr op_ptr;
AlterIndexDataPtr alterIndexPtr;
@@ -14041,32 +14109,25 @@
SchemaTransPtr trans_ptr = op_ptr.p->m_trans_ptr;
const AlterIndxImplReq* impl_req = &alterIndexPtr.p->m_request;
- TableRecordPtr indexPtr;
- c_tableRecordPool.getPtr(indexPtr, impl_req->indexId);
+ D("alterIndex_fromCreateTrigger" << hex << V(op_key) << dec << V(ret));
- Uint32 errorCode = 0;
if (ret == 0) {
jam();
const CreateTrigConf* conf =
(const CreateTrigConf*)signal->getDataPtr();
ndbrequire(conf->transId == trans_ptr.p->m_transId);
-
ndbrequire(alterIndexPtr.p->m_triggerIndex <
alterIndexPtr.p->m_triggerCount);
alterIndexPtr.p->m_triggerIndex += 1;
+ createSubOps(signal, op_ptr);
} else {
- ndbrequire(false);//TODO
- jam();
const CreateTrigRef* ref =
(const CreateTrigRef*)signal->getDataPtr();
-
- ndbrequire(ref->transId == trans_ptr.p->m_transId);
- ndbrequire(ref->errorCode != 0);
- errorCode = ref->errorCode;
+ ErrorInfo error;
+ setError(error, ref);
+ abortSubOps(signal, op_ptr, error);
}
-
- createSubOps(signal, op_ptr);
}
void
@@ -14135,7 +14196,7 @@
void
Dbdict::alterIndex_fromDropTrigger(Signal* signal, Uint32 op_key, Uint32 ret)
{
- D("alterIndex_fromDropTrigger" << hex << V(op_key) << dec << V(ret));
+ jam();
SchemaOpPtr op_ptr;
AlterIndexDataPtr alterIndexPtr;
@@ -14145,32 +14206,25 @@
SchemaTransPtr trans_ptr = op_ptr.p->m_trans_ptr;
const AlterIndxImplReq* impl_req = &alterIndexPtr.p->m_request;
- TableRecordPtr indexPtr;
- c_tableRecordPool.getPtr(indexPtr, impl_req->indexId);
+ D("alterIndex_fromDropTrigger" << hex << V(op_key) << dec << V(ret));
- Uint32 errorCode = 0;
if (ret == 0) {
- jam();
const DropTrigConf* conf =
(const DropTrigConf*)signal->getDataPtr();
ndbrequire(conf->transId == trans_ptr.p->m_transId);
-
ndbrequire(alterIndexPtr.p->m_triggerIndex <
alterIndexPtr.p->m_triggerCount);
alterIndexPtr.p->m_triggerIndex += 1;
+ createSubOps(signal, op_ptr);
} else {
- ndbrequire(false);//TODO
jam();
const DropTrigRef* ref =
(const DropTrigRef*)signal->getDataPtr();
-
- ndbrequire(ref->transId == trans_ptr.p->m_transId);
- ndbrequire(ref->errorCode != 0);
- errorCode = ref->errorCode;
+ ErrorInfo error;
+ setError(error, ref);
+ abortSubOps(signal, op_ptr, error);
}
-
- createSubOps(signal, op_ptr);
}
void
@@ -14238,7 +14292,6 @@
ndbrequire(!op_ptr.isNull());
SchemaTransPtr trans_ptr = op_ptr.p->m_trans_ptr;
- Uint32 errorCode = 0;
if (ret == 0) {
jam();
const BuildIndxConf* conf =
@@ -14246,12 +14299,16 @@
ndbrequire(conf->transId == trans_ptr.p->m_transId);
alterIndexPtr.p->m_sub_build_index = true;
+ createSubOps(signal, op_ptr);
} else {
jam();
- ndbrequire(false); //TODO
- }
+ const BuildIndxRef* ref =
+ (const BuildIndxRef*)signal->getDataPtr();
- createSubOps(signal, op_ptr);
+ ErrorInfo error;
+ setError(error, ref);
+ abortSubOps(signal, op_ptr, error);
+ }
#if wl3600_todo
jam();
@@ -14267,28 +14324,43 @@
}
void
-Dbdict::alterIndex_reply(Signal* signal, SchemaOpPtr op_ptr)
+Dbdict::alterIndex_reply(Signal* signal, SchemaOpPtr op_ptr, ErrorInfo error)
{
D("alterIndex_reply" << V(op_ptr.i) << *op_ptr.p);
SchemaTransPtr trans_ptr = op_ptr.p->m_trans_ptr;
- const OpInfo& info = getOpInfo(op_ptr);
AlterIndexDataPtr alterIndexPtr;
getOpData(op_ptr, alterIndexPtr);
+ const AlterIndxImplReq* impl_req = &alterIndexPtr.p->m_request;
- AlterIndxConf* conf = (AlterIndxConf*)signal->getDataPtrSend();
- conf->senderRef = reference();
- conf->clientData = op_ptr.p->m_clientData;
- conf->transId = trans_ptr.p->m_transId;
- conf->indexId = alterIndexPtr.p->m_request.indexId;
- conf->indexVersion = alterIndexPtr.p->m_request.indexVersion;
-
- D(V(conf->indexId) << V(conf->indexVersion));
-
- Uint32 clientRef = op_ptr.p->m_clientRef;
- sendSignal(clientRef, GSN_ALTER_INDX_CONF,
- signal, AlterIndxConf::SignalLength, JBB);
+ if (!hasError(error)) {
+ AlterIndxConf* conf = (AlterIndxConf*)signal->getDataPtrSend();
+ conf->senderRef = reference();
+ conf->clientData = op_ptr.p->m_clientData;
+ conf->transId = trans_ptr.p->m_transId;
+ conf->indexId = impl_req->indexId;
+ conf->indexVersion = impl_req->indexVersion;
+
+ Uint32 clientRef = op_ptr.p->m_clientRef;
+ sendSignal(clientRef, GSN_ALTER_INDX_CONF,
+ signal, AlterIndxConf::SignalLength, JBB);
+ } else {
+ jam();
+ AlterIndxRef* ref = (AlterIndxRef*)signal->getDataPtrSend();
+ ref->senderRef = reference();
+ ref->clientData = op_ptr.p->m_clientData;
+ ref->transId = trans_ptr.p->m_transId;
+ // wl3600_todo requestType (fix all at once)
+ // wl3600_todo next 2 redundant (fix all at once)
+ ref->indexId = impl_req->indexId;
+ ref->indexVersion = impl_req->indexVersion;
+ getError(error, ref);
+
+ Uint32 clientRef = op_ptr.p->m_clientRef;
+ sendSignal(clientRef, GSN_ALTER_INDX_REF,
+ signal, AlterIndxRef::SignalLength, JBB);
+ }
}
void
@@ -15392,36 +15464,49 @@
}
void
-Dbdict::buildIndex_reply(Signal* signal, SchemaOpPtr op_ptr)
+Dbdict::buildIndex_reply(Signal* signal, SchemaOpPtr op_ptr, ErrorInfo error)
{
- const OpInfo& info = getOpInfo(op_ptr);
+ jam();
SchemaTransPtr& trans_ptr = op_ptr.p->m_trans_ptr;
BuildIndexDataPtr buildIndexPtr;
getOpData(op_ptr, buildIndexPtr);
const BuildIndxImplReq* impl_req = &buildIndexPtr.p->m_request;
+ D("buildIndex_reply" << V(impl_req->indexId));
+
TableRecordPtr indexPtr;
c_tableRecordPool.getPtr(indexPtr, impl_req->indexId);
- Uint32 requestType;
- Uint32 tableId;
- Uint32 indexId;
- Uint32 indexType;
- BuildIndxConf* conf = (BuildIndxConf*)signal->getDataPtrSend();
- conf->senderRef = reference();
- conf->clientData = op_ptr.p->m_clientData;
- conf->transId = trans_ptr.p->m_transId;
- conf->requestType = impl_req->requestType;
- conf->tableId = impl_req->tableId;
- conf->indexId = impl_req->indexId;
- conf->indexType = impl_req->indexType;
-
- D("buildIndex_reply" << V(conf->indexId));
-
- Uint32 clientRef = op_ptr.p->m_clientRef;
- sendSignal(clientRef, GSN_BUILDINDXCONF, signal,
- BuildIndxConf::SignalLength, JBB);
+ if (!hasError(error)) {
+ BuildIndxConf* conf = (BuildIndxConf*)signal->getDataPtrSend();
+ conf->senderRef = reference();
+ conf->clientData = op_ptr.p->m_clientData;
+ conf->transId = trans_ptr.p->m_transId;
+ conf->requestType = impl_req->requestType;
+ conf->tableId = impl_req->tableId;
+ conf->indexId = impl_req->indexId;
+ conf->indexType = impl_req->indexType;
+
+ Uint32 clientRef = op_ptr.p->m_clientRef;
+ sendSignal(clientRef, GSN_BUILDINDXCONF, signal,
+ BuildIndxConf::SignalLength, JBB);
+ } else {
+ jam();
+ BuildIndxRef* ref = (BuildIndxRef*)signal->getDataPtrSend();
+ ref->senderRef = reference();
+ ref->clientData = op_ptr.p->m_clientData;
+ ref->transId = trans_ptr.p->m_transId;
+ ref->requestType = impl_req->requestType;
+ ref->tableId = impl_req->tableId;
+ ref->indexId = impl_req->indexId;
+ ref->indexType = impl_req->indexType;
+ getError(error, ref);
+
+ Uint32 clientRef = op_ptr.p->m_clientRef;
+ sendSignal(clientRef, GSN_BUILDINDXREF, signal,
+ BuildIndxRef::SignalLength, JBB);
+ }
}
/*
@@ -16570,7 +16655,6 @@
ndbrequire(!op_ptr.isNull());
SchemaTransPtr trans_ptr = op_ptr.p->m_trans_ptr;
- Uint32 errorCode = 0;
if (ret == 0) {
jam();
const AlterTrigConf* conf =
@@ -16578,13 +16662,16 @@
ndbrequire(conf->transId == trans_ptr.p->m_transId);
createTriggerPtr.p->m_sub_alter_trigger = true;
+ createSubOps(signal, op_ptr);
} else {
jam();
- ndbrequire(false); //TODO
+ const AlterTrigRef* ref =
+ (const AlterTrigRef*)signal->getDataPtr();
+ ErrorInfo error;
+ setError(error, ref);
+ abortSubOps(signal, op_ptr, error);
}
- createSubOps(signal, op_ptr);
-
#if wl3600_todo
jam();
if (opPtr.p->hasError()) {
@@ -16599,33 +16686,47 @@
}
void
-Dbdict::createTrigger_reply(Signal* signal, SchemaOpPtr op_ptr)
+Dbdict::createTrigger_reply(Signal* signal, SchemaOpPtr op_ptr, ErrorInfo error)
{
- const OpInfo& info = getOpInfo(op_ptr);
+ jam();
SchemaTransPtr& trans_ptr = op_ptr.p->m_trans_ptr;
CreateTriggerDataPtr createTriggerPtr;
getOpData(op_ptr, createTriggerPtr);
const CreateTrigImplReq* impl_req = &createTriggerPtr.p->m_request;
- TableRecordPtr triggerPtr;
- c_tableRecordPool.getPtr(triggerPtr, createTriggerPtr.p->m_request.triggerId);
+ D("createTrigger_reply" << V(impl_req->triggerId) << *op_ptr.p);
- CreateTrigConf* conf = (CreateTrigConf*)signal->getDataPtrSend();
- conf->senderRef = reference();
- conf->clientData = op_ptr.p->m_clientData;
- conf->transId = trans_ptr.p->m_transId;
- conf->requestType = impl_req->requestType;
- conf->tableId = impl_req->tableId;
- conf->indexId = impl_req->indexId;
- conf->triggerId = impl_req->triggerId;
- conf->triggerInfo = impl_req->triggerInfo;
-
- D("createTrigger_reply" << V(conf->triggerId));
-
- Uint32 clientRef = op_ptr.p->m_clientRef;
- sendSignal(clientRef, GSN_CREATE_TRIG_CONF, signal,
- CreateTrigConf::SignalLength, JBB);
+ if (!hasError(error)) {
+ CreateTrigConf* conf = (CreateTrigConf*)signal->getDataPtrSend();
+ conf->senderRef = reference();
+ conf->clientData = op_ptr.p->m_clientData;
+ conf->transId = trans_ptr.p->m_transId;
+ conf->requestType = impl_req->requestType;
+ conf->tableId = impl_req->tableId;
+ conf->indexId = impl_req->indexId;
+ conf->triggerId = impl_req->triggerId;
+ conf->triggerInfo = impl_req->triggerInfo;
+
+ Uint32 clientRef = op_ptr.p->m_clientRef;
+ sendSignal(clientRef, GSN_CREATE_TRIG_CONF, signal,
+ CreateTrigConf::SignalLength, JBB);
+ } else {
+ jam();
+ CreateTrigRef* ref = (CreateTrigRef*)signal->getDataPtrSend();
+ ref->senderRef = reference();
+ ref->clientData = op_ptr.p->m_clientData;
+ ref->transId = trans_ptr.p->m_transId;
+ ref->requestType = impl_req->requestType;
+ ref->tableId = impl_req->tableId;
+ ref->indexId = impl_req->indexId;
+ ref->triggerInfo =impl_req->triggerInfo;
+ getError(error, ref);
+
+ Uint32 clientRef = op_ptr.p->m_clientRef;
+ sendSignal(clientRef, GSN_CREATE_TRIG_REF, signal,
+ CreateTrigRef::SignalLength, JBB);
+ }
}
void
@@ -17483,12 +17584,16 @@
ndbrequire(conf->transId == trans_ptr.p->m_transId);
dropTriggerPtr.p->m_sub_alter_trigger = true;
+ createSubOps(signal, op_ptr);
} else {
jam();
- ndbrequire(false); //TODO
- }
+ const AlterTrigRef* ref =
+ (const AlterTrigRef*)signal->getDataPtr();
- createSubOps(signal, op_ptr);
+ ErrorInfo error;
+ setError(error, ref);
+ abortSubOps(signal, op_ptr, error);
+ }
#if wl3600_todo
jam();
@@ -17499,8 +17604,9 @@
}
void
-Dbdict::dropTrigger_reply(Signal* signal, SchemaOpPtr op_ptr)
+Dbdict::dropTrigger_reply(Signal* signal, SchemaOpPtr op_ptr, ErrorInfo error)
{
+ jam();
const OpInfo& info = getOpInfo(op_ptr);
SchemaTransPtr& trans_ptr = op_ptr.p->m_trans_ptr;
@@ -17508,23 +17614,37 @@
getOpData(op_ptr, dropTriggerPtr);
const DropTrigImplReq* impl_req = &dropTriggerPtr.p->m_request;
- TableRecordPtr triggerPtr;
- c_tableRecordPool.getPtr(triggerPtr, dropTriggerPtr.p->m_request.triggerId);
+ D("dropTrigger_reply" << V(impl_req->triggerId));
- DropTrigConf* conf = (DropTrigConf*)signal->getDataPtrSend();
- conf->senderRef = reference();
- conf->clientData = op_ptr.p->m_clientData;
- conf->transId = trans_ptr.p->m_transId;
- conf->requestType = impl_req->requestType;
- conf->tableId = impl_req->tableId;
- conf->indexId = impl_req->indexId;
- conf->triggerId = impl_req->triggerId;
-
- D("dropTrigger_reply" << V(conf->triggerId));
-
- Uint32 clientRef = op_ptr.p->m_clientRef;
- sendSignal(clientRef, GSN_DROP_TRIG_CONF, signal,
- DropTrigConf::SignalLength, JBB);
+ if (!hasError(error)) {
+ DropTrigConf* conf = (DropTrigConf*)signal->getDataPtrSend();
+ conf->senderRef = reference();
+ conf->clientData = op_ptr.p->m_clientData;
+ conf->transId = trans_ptr.p->m_transId;
+ conf->requestType = impl_req->requestType;
+ conf->tableId = impl_req->tableId;
+ conf->indexId = impl_req->indexId;
+ conf->triggerId = impl_req->triggerId;
+
+ Uint32 clientRef = op_ptr.p->m_clientRef;
+ sendSignal(clientRef, GSN_DROP_TRIG_CONF, signal,
+ DropTrigConf::SignalLength, JBB);
+ } else {
+ jam();
+ DropTrigRef* ref = (DropTrigRef*)signal->getDataPtrSend();
+ ref->senderRef = reference();
+ ref->clientData = op_ptr.p->m_clientData;
+ ref->transId = trans_ptr.p->m_transId;
+ ref->requestType = impl_req->requestType;
+ ref->tableId = impl_req->tableId;
+ ref->indexId = impl_req->indexId;
+ ref->triggerId = impl_req->triggerId;
+ getError(error, ref);
+
+ Uint32 clientRef = op_ptr.p->m_clientRef;
+ sendSignal(clientRef, GSN_DROP_TRIG_REF, signal,
+ DropTrigRef::SignalLength, JBB);
+ }
}
void
@@ -18021,6 +18141,8 @@
ndbrequire(impl_req->senderRef == numberToRef(DBDICT, c_masterNodeId));
ndbrequire(impl_req->senderData == op_ptr.p->op_key);
+ const bool fromMaster = (reference() == impl_req->senderRef);
+
// wl3600_todo look up optional name
// check the table wl3600_todo
@@ -18054,6 +18176,18 @@
alterTriggerPtr.p->m_triggerBlock[0] = DBLQH_REF;
}
}
+
+ // debug
+ if (ERROR_INSERTED(6101) && fromMaster) {
+ jam();
+ setError(error, 9999, __LINE__);
+ return;
+ }
+ if (ERROR_INSERTED(6102) && !fromMaster) {
+ jam();
+ setError(error, 9999, __LINE__);
+ return;
+ }
}
bool
@@ -18064,33 +18198,44 @@
}
void
-Dbdict::alterTrigger_reply(Signal* signal, SchemaOpPtr op_ptr)
+Dbdict::alterTrigger_reply(Signal* signal, SchemaOpPtr op_ptr, ErrorInfo error)
{
- D("alterTrigger_reply");
-
- const OpInfo& info = getOpInfo(op_ptr);
+ jam();
SchemaTransPtr& trans_ptr = op_ptr.p->m_trans_ptr;
AlterTriggerDataPtr alterTriggerPtr;
getOpData(op_ptr, alterTriggerPtr);
const AlterTrigImplReq* impl_req = &alterTriggerPtr.p->m_request;
- TableRecordPtr triggerPtr;
- c_tableRecordPool.getPtr(triggerPtr, alterTriggerPtr.p->m_request.triggerId);
+ D("alterTrigger_reply");
- AlterTrigConf* conf = (AlterTrigConf*)signal->getDataPtrSend();
- conf->senderRef = reference();
- conf->clientData = op_ptr.p->m_clientData;
- conf->transId = trans_ptr.p->m_transId;
- conf->requestType = impl_req->requestType;
- conf->tableId = impl_req->tableId;
- conf->triggerId = impl_req->triggerId;
-
- D("alterTrigger_reply" << V(conf->triggerId));
-
- Uint32 clientRef = op_ptr.p->m_clientRef;
- sendSignal(clientRef, GSN_ALTER_TRIG_CONF, signal,
- AlterTrigConf::SignalLength, JBB);
+ if (!hasError(error)) {
+ AlterTrigConf* conf = (AlterTrigConf*)signal->getDataPtrSend();
+ conf->senderRef = reference();
+ conf->clientData = op_ptr.p->m_clientData;
+ conf->transId = trans_ptr.p->m_transId;
+ conf->requestType = impl_req->requestType;
+ conf->tableId = impl_req->tableId;
+ conf->triggerId = impl_req->triggerId;
+
+ Uint32 clientRef = op_ptr.p->m_clientRef;
+ sendSignal(clientRef, GSN_ALTER_TRIG_CONF, signal,
+ AlterTrigConf::SignalLength, JBB);
+ } else {
+ jam();
+ AlterTrigRef* ref = (AlterTrigRef*)signal->getDataPtrSend();
+ ref->senderRef = reference();
+ ref->clientData = op_ptr.p->m_clientData;
+ ref->transId = trans_ptr.p->m_transId;
+ ref->requestType = impl_req->requestType;
+ ref->tableId = impl_req->tableId;
+ ref->triggerId = impl_req->triggerId;
+ getError(error, ref);
+
+ Uint32 clientRef = op_ptr.p->m_clientRef;
+ sendSignal(clientRef, GSN_ALTER_TRIG_REF, signal,
+ AlterTrigRef::SignalLength, JBB);
+ }
}
void
@@ -22187,10 +22332,10 @@
D("execSCHEMA_TRANS_END_REQ" << *trans_ptr.p << trans_ptr.p->m_opList);
if (!commitFlag) {
- // wl3600_todo
abortSchemaTrans(signal, trans_ptr);
return;
}
+ // wl3600_todo check no parse REFs on ops
// set iterator and start execution phases
PhaseIterator& it = getIterator(trans_ptr);
@@ -22455,12 +22600,31 @@
ndbrequire(trans_ptr.p->m_opDepth != 0);
trans_ptr.p->m_opDepth -= 1;
- (this->*(info.m_reply))(signal, op_ptr);
+ ErrorInfo error;
+ (this->*(info.m_reply))(signal, op_ptr, error);
+}
+
+// a sub-op create failed, send REF to client
+void
+Dbdict::abortSubOps(Signal* signal, SchemaOpPtr op_ptr, ErrorInfo error)
+{
+ D("abortSubOps" << *op_ptr.p);
+
+ SchemaTransPtr trans_ptr = op_ptr.p->m_trans_ptr;
+ const OpInfo& info = getOpInfo(op_ptr);
+
+ // restore operation depth
+ ndbrequire(trans_ptr.p->m_opDepth != 0);
+ trans_ptr.p->m_opDepth -= 1;
+
+ ndbrequire(hasError(error));
+ (this->*(info.m_reply))(signal, op_ptr, error);
}
void
Dbdict::abortSchemaTrans(Signal* signal, SchemaTransPtr trans_ptr)
{
+ // wl3600_todo start abort flow
trans_ptr.p->m_requestType = SchemaTransImplReq::RT_END;
schemaTrans_sendReq(signal, trans_ptr, false);
}
--- 1.70/storage/ndb/src/kernel/blocks/dbdict/Dbdict.hpp 2007-02-03 10:12:19 +01:00
+++ 1.71/storage/ndb/src/kernel/blocks/dbdict/Dbdict.hpp 2007-02-04 22:43:48 +01:00
@@ -1254,9 +1254,7 @@
inline void
setError(ErrorInfo& error, const Ref* ref)
{
- error.errorCode = ref->errorCode;
- error.errorLine = ref->errorLine;
- error.errorNodeId = ref->errorNodeId;
+ setError(error, ref->errorCode, ref->errorLine, ref->errorNodeId);
}
template <class Ref>
@@ -1283,7 +1281,7 @@
void (Dbdict::*m_parse)(Signal*, SchemaTransPtr);
void (Dbdict::*m_parseCommon)(Signal*, SchemaOpPtr, ErrorInfo&);
bool (Dbdict::*m_subOps)(Signal*, SchemaOpPtr);
- void (Dbdict::*m_reply)(Signal*, SchemaOpPtr);
+ void (Dbdict::*m_reply)(Signal*, SchemaOpPtr, ErrorInfo);
// run phases
void (Dbdict::*m_prepare)(Signal*, SchemaOpPtr, Uint32 repeat);
@@ -1667,6 +1665,7 @@
void schemaTrans_sendParseReq(Signal*, SchemaOpPtr);
void schemaTrans_recvReply(Signal*, bool isConf);
void createSubOps(Signal*, SchemaOpPtr, bool first = false);
+ void abortSubOps(Signal*, SchemaOpPtr, ErrorInfo);
void abortSchemaTrans(Signal*, SchemaTransPtr);
// participant
@@ -1911,7 +1910,7 @@
void createTable_parse(Signal*, SchemaTransPtr);
void createTable_parseCommon(Signal*, SchemaOpPtr, ErrorInfo&);
bool createTable_subOps(Signal*, SchemaOpPtr);
- void createTable_reply(Signal*, SchemaOpPtr);
+ void createTable_reply(Signal*, SchemaOpPtr, ErrorInfo);
//
void createTable_prepare(Signal*, SchemaOpPtr, Uint32 repeat);
void createTable_commit(Signal*, SchemaOpPtr, Uint32 repeat);
@@ -2003,7 +2002,7 @@
void alterTable_parse(Signal*, SchemaTransPtr);
void alterTable_parseCommon(Signal*, SchemaOpPtr, ErrorInfo&);
bool alterTable_subOps(Signal*, SchemaOpPtr);
- void alterTable_reply(Signal*, SchemaOpPtr);
+ void alterTable_reply(Signal*, SchemaOpPtr, ErrorInfo);
//
void alterTable_prepare(Signal*, SchemaOpPtr, Uint32 repeat);
void alterTable_commit(Signal*, SchemaOpPtr, Uint32 repeat);
@@ -2074,7 +2073,7 @@
void dropTable_parse(Signal*, SchemaTransPtr);
void dropTable_parseCommon(Signal*, SchemaOpPtr, ErrorInfo&);
bool dropTable_subOps(Signal*, SchemaOpPtr);
- void dropTable_reply(Signal*, SchemaOpPtr);
+ void dropTable_reply(Signal*, SchemaOpPtr, ErrorInfo);
//
void dropTable_prepare(Signal*, SchemaOpPtr, Uint32 repeat);
void dropTable_commit(Signal*, SchemaOpPtr, Uint32 repeat);
@@ -2243,7 +2242,7 @@
void createIndex_parse(Signal*, SchemaTransPtr);
void createIndex_parseCommon(Signal*, SchemaOpPtr, ErrorInfo&);
bool createIndex_subOps(Signal*, SchemaOpPtr);
- void createIndex_reply(Signal*, SchemaOpPtr);
+ void createIndex_reply(Signal*, SchemaOpPtr, ErrorInfo);
//
void createIndex_prepare(Signal*, SchemaOpPtr, Uint32 repeat);
void createIndex_commit(Signal*, SchemaOpPtr, Uint32 repeat);
@@ -2393,7 +2392,7 @@
void dropIndex_parse(Signal*, SchemaTransPtr);
void dropIndex_parseCommon(Signal*, SchemaOpPtr, ErrorInfo&);
bool dropIndex_subOps(Signal*, SchemaOpPtr);
- void dropIndex_reply(Signal*, SchemaOpPtr);
+ void dropIndex_reply(Signal*, SchemaOpPtr, ErrorInfo);
//
void dropIndex_prepare(Signal*, SchemaOpPtr, Uint32 repeat);
void dropIndex_commit(Signal*, SchemaOpPtr, Uint32 repeat);
@@ -2589,7 +2588,7 @@
void alterIndex_parse(Signal*, SchemaTransPtr);
void alterIndex_parseCommon(Signal*, SchemaOpPtr, ErrorInfo&);
bool alterIndex_subOps(Signal*, SchemaOpPtr);
- void alterIndex_reply(Signal*, SchemaOpPtr);
+ void alterIndex_reply(Signal*, SchemaOpPtr, ErrorInfo);
//
void alterIndex_prepare(Signal*, SchemaOpPtr, Uint32 repeat);
void alterIndex_commit(Signal*, SchemaOpPtr, Uint32 repeat);
@@ -2730,7 +2729,7 @@
void buildIndex_parse(Signal*, SchemaTransPtr);
void buildIndex_parseCommon(Signal*, SchemaOpPtr, ErrorInfo&);
bool buildIndex_subOps(Signal*, SchemaOpPtr);
- void buildIndex_reply(Signal*, SchemaOpPtr);
+ void buildIndex_reply(Signal*, SchemaOpPtr, ErrorInfo);
//
void buildIndex_prepare(Signal*, SchemaOpPtr, Uint32 repeat);
void buildIndex_commit(Signal*, SchemaOpPtr, Uint32 repeat);
@@ -2957,7 +2956,7 @@
void createTrigger_parse(Signal*, SchemaTransPtr);
void createTrigger_parseCommon(Signal*, SchemaOpPtr, ErrorInfo&);
bool createTrigger_subOps(Signal*, SchemaOpPtr);
- void createTrigger_reply(Signal*, SchemaOpPtr);
+ void createTrigger_reply(Signal*, SchemaOpPtr, ErrorInfo);
//
void createTrigger_prepare(Signal*, SchemaOpPtr, Uint32 repeat);
void createTrigger_commit(Signal*, SchemaOpPtr, Uint32 repeat);
@@ -3069,7 +3068,7 @@
void dropTrigger_parse(Signal*, SchemaTransPtr);
void dropTrigger_parseCommon(Signal*, SchemaOpPtr, ErrorInfo&);
bool dropTrigger_subOps(Signal*, SchemaOpPtr);
- void dropTrigger_reply(Signal*, SchemaOpPtr);
+ void dropTrigger_reply(Signal*, SchemaOpPtr, ErrorInfo);
//
void dropTrigger_prepare(Signal*, SchemaOpPtr, Uint32 repeat);
void dropTrigger_commit(Signal*, SchemaOpPtr, Uint32 repeat);
@@ -3200,7 +3199,7 @@
void alterTrigger_parse(Signal*, SchemaTransPtr);
void alterTrigger_parseCommon(Signal*, SchemaOpPtr, ErrorInfo&);
bool alterTrigger_subOps(Signal*, SchemaOpPtr);
- void alterTrigger_reply(Signal*, SchemaOpPtr);
+ void alterTrigger_reply(Signal*, SchemaOpPtr, ErrorInfo);
//
void alterTrigger_prepare(Signal*, SchemaOpPtr, Uint32 repeat);
void alterTrigger_commit(Signal*, SchemaOpPtr, Uint32 repeat);
--- 1.2/storage/ndb/src/common/debugger/signaldata/AlterTrigImpl.cpp 2007-01-18 13:18:45 +01:00
+++ 1.3/storage/ndb/src/common/debugger/signaldata/AlterTrigImpl.cpp 2007-02-04 22:43:48 +01:00
@@ -56,10 +56,10 @@
fprintf(output, " tableId: %x", sig->tableId);
fprintf(output, " triggerId: %x", sig->triggerId);
fprintf(output, "\n");
- fprintf(output, " errorCode: %x", sig->errorCode);
- fprintf(output, " errorLine: %x", sig->errorLine);
- fprintf(output, " errorNodeId: %x", sig->errorNodeId);
- fprintf(output, " masterNodeId: %x", sig->masterNodeId);
+ fprintf(output, " errorCode: %u", sig->errorCode);
+ fprintf(output, " errorLine: %u", sig->errorLine);
+ fprintf(output, " errorNodeId: %u", sig->errorNodeId);
+ fprintf(output, " masterNodeId: %u", sig->masterNodeId);
fprintf(output, "\n");
return true;
}
--- 1.2/storage/ndb/src/common/debugger/signaldata/CreateTab.cpp 2007-01-10 16:23:04 +01:00
+++ 1.3/storage/ndb/src/common/debugger/signaldata/CreateTab.cpp 2007-02-04 22:43:48 +01:00
@@ -49,10 +49,10 @@
fprintf(output, " senderRef: %x", sig->senderRef);
fprintf(output, " senderData: %x", sig->senderData);
fprintf(output, "\n");
- fprintf(output, " errorCode: %x", sig->errorCode);
- fprintf(output, " errorLine: %x", sig->errorLine );
- fprintf(output, " errorKey: %x", sig->errorKey);
- fprintf(output, " errorStatus: %x", sig->errorStatus);
+ fprintf(output, " errorCode: %u", sig->errorCode);
+ fprintf(output, " errorLine: %u", sig->errorLine );
+ fprintf(output, " errorKey: %u", sig->errorKey);
+ fprintf(output, " errorStatus: %u", sig->errorStatus);
fprintf(output, "\n");
return true;
}
--- 1.3/storage/ndb/src/common/debugger/signaldata/CreateTable.cpp 2007-01-10 16:23:04 +01:00
+++ 1.4/storage/ndb/src/common/debugger/signaldata/CreateTable.cpp 2007-02-04 22:43:48 +01:00
@@ -55,7 +55,7 @@
fprintf(output, " errorNodeId: %u", sig->errorNodeId);
fprintf(output, " masterNodeId: %u", sig->masterNodeId);
fprintf(output, "\n");
- fprintf(output, " status: %u", sig->status);
+ fprintf(output, " errorStatus: %u", sig->errorStatus);
fprintf(output, " errorKey: %u", sig->errorKey);
fprintf(output, "\n");
return true;
| Thread |
|---|
| • bk commit into 5.1 tree (pekka:1.2402) | pekka | 4 Feb |