Commit 1860431e authored by joerg@debian.(none)'s avatar joerg@debian.(none)

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

into debian.(none):/M51/mysql-5.1
parents 68e876cc 432fcc4e
...@@ -162,7 +162,7 @@ ...@@ -162,7 +162,7 @@
Name="VCCustomBuildTool"/> Name="VCCustomBuildTool"/>
<Tool <Tool
Name="VCLinkerTool" Name="VCLinkerTool"
AdditionalDependencies="wsock32.lib odbc32.lib odbccp32.lib mysqlclient.lib mysys.lib" AdditionalDependencies="wsock32.lib odbc32.lib odbccp32.lib"
OutputFile="../client_debug/mysqlslap.exe" OutputFile="../client_debug/mysqlslap.exe"
LinkIncremental="1" LinkIncremental="1"
SuppressStartupBanner="TRUE" SuppressStartupBanner="TRUE"
......
...@@ -290,6 +290,8 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "bdb", "storage\bdb\bdb.vcpr ...@@ -290,6 +290,8 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "bdb", "storage\bdb\bdb.vcpr
EndProject EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mysqlslap", "client\mysqlslap.vcproj", "{2E9332CF-072A-4381-BF37-17C5AB4F8583}" Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mysqlslap", "client\mysqlslap.vcproj", "{2E9332CF-072A-4381-BF37-17C5AB4F8583}"
ProjectSection(ProjectDependencies) = postProject ProjectSection(ProjectDependencies) = postProject
{26383276-4843-494B-8BE0-8936ED3EBAAB} = {26383276-4843-494B-8BE0-8936ED3EBAAB}
{44D9C7DC-6636-4B82-BD01-6876C64017DF} = {44D9C7DC-6636-4B82-BD01-6876C64017DF}
EndProjectSection EndProjectSection
EndProject EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "archive", "storage\archive\archive.vcproj", "{4471CADD-737B-4AD7-A108-2FBAA1C4B03B}" Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "archive", "storage\archive\archive.vcproj", "{4471CADD-737B-4AD7-A108-2FBAA1C4B03B}"
......
...@@ -49,9 +49,9 @@ public: ...@@ -49,9 +49,9 @@ public:
GET_SET_SENDERREF GET_SET_SENDERREF
GET_SET_SENDERDATA GET_SET_SENDERDATA
void setPrepareId(Uint32 pId) { prepareId = pId; }; // !! unsets release flag void setPrepareId(Uint32 pId) { prepareId = pId; }; // !! unsets release flag
Uint32 getPrepareId() { return prepareId & 0xFF; }; Uint32 getPrepareId() const { return prepareId & 0xFF; };
void setReleaseFlag() { prepareId |= 0x100; }; void setReleaseFlag() { prepareId |= 0x100; };
bool getReleaseFlag() { return (prepareId & 0x100) != 0; }; bool getReleaseFlag() const { return (prepareId & 0x100) != 0; };
private: private:
Uint32 senderData; // MUST be no 1! Uint32 senderData; // MUST be no 1!
Uint32 senderRef; Uint32 senderRef;
...@@ -117,7 +117,6 @@ public: ...@@ -117,7 +117,6 @@ public:
IllegalKeyNumber = 1, IllegalKeyNumber = 1,
IllegalAttrNumber = 2, IllegalAttrNumber = 2,
TCError = 3, TCError = 3,
IllegalPrepareId = 4,
AllocationError = 5, AllocationError = 5,
MissingDataSection = 6, MissingDataSection = 6,
MissingData = 7 MissingData = 7
......
...@@ -20,10 +20,12 @@ bool ...@@ -20,10 +20,12 @@ bool
printUTIL_EXECUTE_REQ(FILE* out, const Uint32 * data, Uint32 len, Uint16 rec) printUTIL_EXECUTE_REQ(FILE* out, const Uint32 * data, Uint32 len, Uint16 rec)
{ {
const UtilExecuteReq* const sig = (UtilExecuteReq*)data; const UtilExecuteReq* const sig = (UtilExecuteReq*)data;
fprintf(out, " senderRef: H'%.8x, senderData: H'%.8x prepareId: %d\n", fprintf(out, " senderRef: H'%.8x, senderData: H'%.8x prepareId: %d "
" releaseFlag: %d\n",
sig->senderRef, sig->senderRef,
sig->senderData, sig->senderData,
sig->prepareId); sig->getPrepareId(),
sig->getReleaseFlag());
return true; return true;
} }
...@@ -48,8 +50,6 @@ printUTIL_EXECUTE_REF(FILE* out, const Uint32 * data, Uint32 len, Uint16 rec) ...@@ -48,8 +50,6 @@ printUTIL_EXECUTE_REF(FILE* out, const Uint32 * data, Uint32 len, Uint16 rec)
"IllegalAttrNumber" : "IllegalAttrNumber" :
sig->errorCode == UtilExecuteRef::TCError ? sig->errorCode == UtilExecuteRef::TCError ?
"TCError" : "TCError" :
sig->errorCode == UtilExecuteRef::IllegalPrepareId ?
"IllegalPrepareId" :
sig->errorCode == UtilExecuteRef::AllocationError ? sig->errorCode == UtilExecuteRef::AllocationError ?
"AllocationError" : "AllocationError" :
"Unknown"); "Unknown");
......
...@@ -52,7 +52,6 @@ ...@@ -52,7 +52,6 @@
DbUtil::DbUtil(const Configuration & conf) : DbUtil::DbUtil(const Configuration & conf) :
SimulatedBlock(DBUTIL, conf), SimulatedBlock(DBUTIL, conf),
c_runningPrepares(c_preparePool), c_runningPrepares(c_preparePool),
c_runningPreparedOperations(c_preparedOperationPool),
c_seizingTransactions(c_transactionPool), c_seizingTransactions(c_transactionPool),
c_runningTransactions(c_transactionPool), c_runningTransactions(c_transactionPool),
c_lockQueues(c_lockQueuePool) c_lockQueues(c_lockQueuePool)
...@@ -566,12 +565,13 @@ DbUtil::execDUMP_STATE_ORD(Signal* signal){ ...@@ -566,12 +565,13 @@ DbUtil::execDUMP_STATE_ORD(Signal* signal){
} }
ndbout << "PreparedOperation Id: " << signal->theData[2] << endl; ndbout << "PreparedOperation Id: " << signal->theData[2] << endl;
PreparedOperationPtr prepOpPtr; PreparedOperationPtr prepOpPtr;
c_runningPreparedOperations.getPtr(prepOpPtr, signal->theData[2]); c_preparedOperationPool.getPtr(prepOpPtr, signal->theData[2]);
prepOpPtr.p->print(); prepOpPtr.p->print();
return; return;
} }
// ** Print all records ** // ** Print all records **
#if 0 // not implemented
PreparedOperationPtr prepOpPtr; PreparedOperationPtr prepOpPtr;
if (!c_runningPreparedOperations.first(prepOpPtr)) { if (!c_runningPreparedOperations.first(prepOpPtr)) {
ndbout << "No PreparedOperations exist" << endl; ndbout << "No PreparedOperations exist" << endl;
...@@ -583,6 +583,7 @@ DbUtil::execDUMP_STATE_ORD(Signal* signal){ ...@@ -583,6 +583,7 @@ DbUtil::execDUMP_STATE_ORD(Signal* signal){
ndbout << "]"; ndbout << "]";
c_runningPreparedOperations.next(prepOpPtr); c_runningPreparedOperations.next(prepOpPtr);
} }
#endif
return; return;
case 3: case 3:
...@@ -988,7 +989,7 @@ DbUtil::prepareOperation(Signal* signal, PreparePtr prepPtr) ...@@ -988,7 +989,7 @@ DbUtil::prepareOperation(Signal* signal, PreparePtr prepPtr)
* Seize and store PreparedOperation struct * Seize and store PreparedOperation struct
*******************************************/ *******************************************/
PreparedOperationPtr prepOpPtr; PreparedOperationPtr prepOpPtr;
if(!c_runningPreparedOperations.seize(prepOpPtr)) { if(!c_preparedOperationPool.seize(prepOpPtr)) {
jam(); jam();
releaseSections(signal); releaseSections(signal);
sendUtilPrepareRef(signal, UtilPrepareRef::PREPARED_OPERATION_SEIZE_ERROR, sendUtilPrepareRef(signal, UtilPrepareRef::PREPARED_OPERATION_SEIZE_ERROR,
...@@ -1738,17 +1739,7 @@ DbUtil::execUTIL_EXECUTE_REQ(Signal* signal) ...@@ -1738,17 +1739,7 @@ DbUtil::execUTIL_EXECUTE_REQ(Signal* signal)
* Get PreparedOperation struct * Get PreparedOperation struct
*******************************/ *******************************/
PreparedOperationPtr prepOpPtr; PreparedOperationPtr prepOpPtr;
c_runningPreparedOperations.first(prepOpPtr); c_preparedOperationPool.getPtr(prepOpPtr, prepareId);
while (!prepOpPtr.isNull() && prepOpPtr.i != prepareId)
c_runningPreparedOperations.next(prepOpPtr);
if (prepOpPtr.i != prepareId) {
jam();
releaseSections(signal);
sendUtilExecuteRef(signal, UtilExecuteRef::IllegalPrepareId,
0, clientRef, clientData);
return;
}
prepOpPtr.p->releaseFlag = releaseFlag; prepOpPtr.p->releaseFlag = releaseFlag;
......
...@@ -389,7 +389,6 @@ public: ...@@ -389,7 +389,6 @@ public:
DataBuffer<1>::DataBufferPool c_attrMappingPool; DataBuffer<1>::DataBufferPool c_attrMappingPool;
DataBuffer<11>::DataBufferPool c_dataBufPool; DataBuffer<11>::DataBufferPool c_dataBufPool;
DLList<Prepare> c_runningPrepares; DLList<Prepare> c_runningPrepares;
DLList<PreparedOperation> c_runningPreparedOperations;
DLList<Transaction> c_seizingTransactions; // Being seized at TC DLList<Transaction> c_seizingTransactions; // Being seized at TC
DLList<Transaction> c_runningTransactions; // Seized and now exec. DLList<Transaction> c_runningTransactions; // Seized and now exec.
......
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