From: Jonas Oreland Date: January 19 2012 6:22am Subject: bzr push into mysql-5.1-telco-7.0 branch (jonas.oreland:4802 to 4803) List-Archive: http://lists.mysql.com/commits/142467 Message-Id: <20120119062212.D598155C19E@perch.localdomain> MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit 4803 Jonas Oreland 2012-01-19 ndb - fix broken support for unused NO_EMULATED_JAM modified: storage/ndb/src/kernel/blocks/dbdict/Dbdict.cpp storage/ndb/src/kernel/error/ErrorReporter.cpp storage/ndb/src/kernel/vm/Emulator.cpp storage/ndb/src/kernel/vm/Emulator.hpp 4802 Jonas Oreland 2012-01-18 ndb - use optimized Bitmap search functions modified: storage/ndb/src/common/transporter/TransporterRegistry.cpp === modified file 'storage/ndb/src/kernel/blocks/dbdict/Dbdict.cpp' --- a/storage/ndb/src/kernel/blocks/dbdict/Dbdict.cpp 2011-12-07 17:51:26 +0000 +++ b/storage/ndb/src/kernel/blocks/dbdict/Dbdict.cpp 2012-01-19 06:21:05 +0000 @@ -16531,8 +16531,11 @@ void Dbdict::createEvent_sendReply(Signa evntRecPtr.p->m_errorLine = __LINE__; evntRecPtr.p->m_errorNode = reference(); jam(); - } else + } + else + { jam(); + } } // reference to API if master DICT === modified file 'storage/ndb/src/kernel/error/ErrorReporter.cpp' --- a/storage/ndb/src/kernel/error/ErrorReporter.cpp 2011-12-30 13:05:50 +0000 +++ b/storage/ndb/src/kernel/error/ErrorReporter.cpp 2012-01-19 06:21:05 +0000 @@ -213,9 +213,6 @@ ErrorReporter::handleAssert(const char* #ifdef NO_EMULATED_JAM BaseString::snprintf(refMessage, 100, "file: %s lineNo: %d", file, line); - jam = NULL; - jamIndex = 0; - jamBlockNumber = 0; #else const EmulatedJamBuffer *jamBuffer = (EmulatedJamBuffer *)NdbThread_GetTlsKey(NDB_THREAD_TLS_JAM); === modified file 'storage/ndb/src/kernel/vm/Emulator.cpp' --- a/storage/ndb/src/kernel/vm/Emulator.cpp 2011-09-27 06:44:06 +0000 +++ b/storage/ndb/src/kernel/vm/Emulator.cpp 2012-01-19 06:21:05 +0000 @@ -79,7 +79,12 @@ EmulatorData::create(){ Global jam() buffer, for non-multithreaded operation. For multithreaded ndbd, each thread will set a local jam buffer later. */ - NdbThread_SetTlsKey(NDB_THREAD_TLS_JAM, (void *)&theEmulatedJamBuffer); +#ifndef NO_EMULATED_JAM + void * jamBuffer = (void *)&theEmulatedJamBuffer; +#else + void * jamBuffer = 0; +#endif + NdbThread_SetTlsKey(NDB_THREAD_TLS_JAM, jamBuffer); NdbMem_Create(); === modified file 'storage/ndb/src/kernel/vm/Emulator.hpp' --- a/storage/ndb/src/kernel/vm/Emulator.hpp 2012-01-16 07:14:30 +0000 +++ b/storage/ndb/src/kernel/vm/Emulator.hpp 2012-01-19 06:21:05 +0000 @@ -37,18 +37,17 @@ extern struct GlobalData global extern class SignalLoggerManager globalSignalLoggers; #endif -#ifndef NO_EMULATED_JAM /* EMULATED_JAM_SIZE must be a power of two, so JAM_MASK will work. */ #define EMULATED_JAM_SIZE 1024 #define JAM_MASK (EMULATED_JAM_SIZE - 1) -struct EmulatedJamBuffer { +struct EmulatedJamBuffer +{ Uint32 theEmulatedJamIndex; // last block entry, used in dumpJam() if jam contains no block entries Uint32 theEmulatedJamBlockNumber; Uint32 theEmulatedJam[EMULATED_JAM_SIZE]; }; -#endif struct EmulatorData { class Configuration * theConfiguration; No bundle (reason: useless for push emails).