Commit c03c9b24 authored by unknown's avatar unknown
Browse files

Merge


ndb/src/kernel/main.cpp:
  merge
parents 7d4ea5cf e1d76d16
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -76,15 +76,15 @@ LogHandler::append_impl(const char* pCategory, Logger::LoggerLevel level,
			const char* pMsg)
{
  writeHeader(pCategory, level);
  if (m_count_repeated_messages == 0)
  if (m_count_repeated_messages <= 1)
    writeMessage(pMsg);
  else
  {
    BaseString str(pMsg);
    str.appfmt(" - Repeated %d times", m_count_repeated_messages);
    writeMessage(str.c_str());
    m_count_repeated_messages= 0;
  }
  m_count_repeated_messages= 0;
  writeFooter();
}

+2 −10
Original line number Diff line number Diff line
@@ -187,11 +187,9 @@ int main(int argc, char** argv)
    assert("Illegal state globalData.theRestartFlag" == 0);
  }

  SocketServer socket_server;

  globalTransporterRegistry.startSending();
  globalTransporterRegistry.startReceiving();
  if (!globalTransporterRegistry.start_service(socket_server)){
  if (!globalTransporterRegistry.start_service(*globalEmulatorData.m_socket_server)){
    ndbout_c("globalTransporterRegistry.start_service() failed");
    exit(-1);
  }
@@ -203,7 +201,7 @@ int main(int argc, char** argv)

  globalEmulatorData.theWatchDog->doStart();
  
  socket_server.startServer();
  globalEmulatorData.m_socket_server->startServer();

  struct ndb_mgm_reply mgm_reply;
  for(unsigned int i=0;i<globalTransporterRegistry.m_transporter_interface.size();i++)
@@ -215,18 +213,12 @@ int main(int argc, char** argv)
					 &mgm_reply);



  //  theConfig->closeConfiguration();

  globalEmulatorData.theThreadConfig->ipControlLoop();
  
  NdbShutdown(NST_Normal);

  socket_server.stopServer();
  socket_server.stopSessions();

  globalTransporterRegistry.stop_clients();

  return NRT_Default;
}

+17 −1
Original line number Diff line number Diff line
@@ -68,6 +68,7 @@ EmulatorData::EmulatorData(){
  theThreadConfig  = 0;
  theSimBlockList  = 0;
  theShutdownMutex = 0;
  m_socket_server = 0;
}

void
@@ -83,6 +84,7 @@ EmulatorData::create(){
  theWatchDog      = new WatchDog();
  theThreadConfig  = new ThreadConfig();
  theSimBlockList  = new SimBlockList();
  m_socket_server  = new SocketServer();

  theShutdownMutex = NdbMutex_Create();

@@ -99,7 +101,8 @@ EmulatorData::destroy(){
    delete theThreadConfig; theThreadConfig = 0;
  if(theSimBlockList)
    delete theSimBlockList; theSimBlockList = 0;
  
  if(m_socket_server)
    delete m_socket_server; m_socket_server = 0;
  NdbMem_Destroy();
}

@@ -195,9 +198,22 @@ NdbShutdown(NdbShutdownType type,
      fclose(outputStream);
#endif
    
    /**
     * Stop all transporter connection attempts and accepts
     */
    globalEmulatorData.m_socket_server->stopServer();
    globalEmulatorData.m_socket_server->stopSessions();
    globalTransporterRegistry.stop_clients();

    /**
     * Stop transporter communication with other nodes
     */
    globalTransporterRegistry.stopSending();
    globalTransporterRegistry.stopReceiving();
    
    /**
     * Remove all transporters
     */
    globalTransporterRegistry.removeAll();
    
#ifdef VM_TRACE
+2 −1
Original line number Diff line number Diff line
@@ -55,6 +55,7 @@ struct EmulatorData {
  class WatchDog      * theWatchDog;
  class ThreadConfig  * theThreadConfig;
  class SimBlockList  * theSimBlockList;
  class SocketServer  * m_socket_server;

  /**
   * Constructor