Commit b0c03011 authored by stewart@mysql.com's avatar stewart@mysql.com

Merge mysql.com:/home/stewart/Documents/MySQL/5.0/ndb

into mysql.com:/home/stewart/Documents/MySQL/5.0/ndb-dynamic-port
parents a09a8229 45ca289e
...@@ -13,12 +13,14 @@ wl2077-read hold lock 4.6 (-1%) 6.7 (+ 0%) ...@@ -13,12 +13,14 @@ wl2077-read hold lock 4.6 (-1%) 6.7 (+ 0%)
5.0-ndb batch read committed f) 50' (+680%) g) 50' (+360%) 5.0-ndb batch read committed f) 50' (+680%) g) 50' (+360%)
5.0-ndb batch read hold lock h) 12' (+160%) i) 13' (+79%) 5.0-ndb batch read hold lock h) 12' (+160%) i) 13' (+79%)
shm-mem read committed (cmp. wl2077) a) 9.5' (+48%) b) 14' (+30%)
-- Comparision e) read hold lock c) 6.7' (+45%) d) 9.8' (+46%)
serial pk: 10.9'
batched (1000): 59' -- Comparision e) shm
serial uniq index: 8.4' serial pk: 10.9' 20' (+83%)
batched (1000): 33' batched (1000): 59' 62' (+5%)
serial uniq index: 8.4' 14' (+66%)
batched (1000): 33' 36' (+9%)
index range (1000): 186' index range (1000): 186'
---- ----
...@@ -41,3 +43,6 @@ wl2077 12s 14s ...@@ -41,3 +43,6 @@ wl2077 12s 14s
wl2077 wo/ blobs 1.2s (-30%) 2.5s (-22%) wl2077 wo/ blobs 1.2s (-30%) 2.5s (-22%)
pekka-blob-fix 1.3s pekka-blob-fix 1.3s
shm 1.2s 2.0s
shm wo/ blobs 1.1s 2.0s
...@@ -87,6 +87,7 @@ public: ...@@ -87,6 +87,7 @@ public:
*/ */
class TransporterRegistry { class TransporterRegistry {
friend class OSE_Receiver; friend class OSE_Receiver;
friend class SHM_Transporter;
friend class Transporter; friend class Transporter;
friend class TransporterService; friend class TransporterService;
public: public:
...@@ -317,6 +318,8 @@ private: ...@@ -317,6 +318,8 @@ private:
Uint32 poll_TCP(Uint32 timeOutMillis); Uint32 poll_TCP(Uint32 timeOutMillis);
Uint32 poll_SCI(Uint32 timeOutMillis); Uint32 poll_SCI(Uint32 timeOutMillis);
Uint32 poll_SHM(Uint32 timeOutMillis); Uint32 poll_SHM(Uint32 timeOutMillis);
int m_shm_own_pid;
}; };
#endif // Define of TransporterRegistry_H #endif // Define of TransporterRegistry_H
...@@ -214,7 +214,8 @@ SHM_Transporter::connect_server_impl(NDB_SOCKET_TYPE sockfd) ...@@ -214,7 +214,8 @@ SHM_Transporter::connect_server_impl(NDB_SOCKET_TYPE sockfd)
} }
// Send ok to client // Send ok to client
s_output.println("shm server 1 ok: %d", g_shm_pid); s_output.println("shm server 1 ok: %d",
m_transporter_registry.m_shm_own_pid);
// Wait for ok from client // Wait for ok from client
if (s_input.gets(buf, 256) == 0) if (s_input.gets(buf, 256) == 0)
...@@ -293,7 +294,8 @@ SHM_Transporter::connect_client_impl(NDB_SOCKET_TYPE sockfd) ...@@ -293,7 +294,8 @@ SHM_Transporter::connect_client_impl(NDB_SOCKET_TYPE sockfd)
} }
// Send ok to server // Send ok to server
s_output.println("shm client 1 ok: %d", g_shm_pid); s_output.println("shm client 1 ok: %d",
m_transporter_registry.m_shm_own_pid);
int r= connect_common(sockfd); int r= connect_common(sockfd);
......
...@@ -1275,10 +1275,8 @@ TransporterRegistry::startReceiving() ...@@ -1275,10 +1275,8 @@ TransporterRegistry::startReceiving()
#endif #endif
#ifdef NDB_SHM_TRANSPORTER #ifdef NDB_SHM_TRANSPORTER
if(nSHMTransporters) m_shm_own_pid = getpid();
{
signal(SIGUSR1, shm_sig_handler); signal(SIGUSR1, shm_sig_handler);
}
#endif #endif
} }
......
...@@ -51,8 +51,6 @@ void catchsigs(bool ignore); // for process signal handling ...@@ -51,8 +51,6 @@ void catchsigs(bool ignore); // for process signal handling
extern "C" void handler_shutdown(int signum); // for process signal handling extern "C" void handler_shutdown(int signum); // for process signal handling
extern "C" void handler_error(int signum); // for process signal handling extern "C" void handler_error(int signum); // for process signal handling
extern int g_shm_pid;
// Shows system information // Shows system information
void systemInfo(const Configuration & conf, void systemInfo(const Configuration & conf,
const LogLevel & ll); const LogLevel & ll);
...@@ -142,7 +140,6 @@ int main(int argc, char** argv) ...@@ -142,7 +140,6 @@ int main(int argc, char** argv)
} }
g_eventLogger.info("Angel pid: %d ndb pid: %d", getppid(), getpid()); g_eventLogger.info("Angel pid: %d ndb pid: %d", getppid(), getpid());
g_shm_pid = getpid();
theConfig->setupConfiguration(); theConfig->setupConfiguration();
systemInfo(* theConfig, * theConfig->m_logLevel); systemInfo(* theConfig, * theConfig->m_logLevel);
......
...@@ -2973,7 +2973,13 @@ fixHostname(InitConfigFileParser::Context & ctx, const char * data){ ...@@ -2973,7 +2973,13 @@ fixHostname(InitConfigFileParser::Context & ctx, const char * data){
require(ctx.m_currentSection->get(buf, &id)); require(ctx.m_currentSection->get(buf, &id));
const Properties * node; const Properties * node;
require(ctx.m_config->get("Node", id, &node)); if(!ctx.m_config->get("Node", id, &node))
{
ctx.reportError("Unknown node: \"%d\" specified in connection "
"[%s] starting at line: %d",
id, ctx.fname, ctx.m_sectionLineno);
return false;
}
const char * hostname; const char * hostname;
require(node->get("HostName", &hostname)); require(node->get("HostName", &hostname));
......
...@@ -450,12 +450,8 @@ runReceiveResponse_C(void * me) ...@@ -450,12 +450,8 @@ runReceiveResponse_C(void * me)
return me; return me;
} }
extern int g_shm_pid;
void TransporterFacade::threadMainReceive(void) void TransporterFacade::threadMainReceive(void)
{ {
g_shm_pid = getpid();
theTransporterRegistry->startReceiving(); theTransporterRegistry->startReceiving();
NdbMutex_Lock(theMutexPtr); NdbMutex_Lock(theMutexPtr);
theTransporterRegistry->update_connections(); theTransporterRegistry->update_connections();
......
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