Loading sql/mysqld.cc +46 −32 Original line number Diff line number Diff line Loading @@ -471,12 +471,25 @@ static void close_connections(void) #ifdef __NT__ if ( hPipe != INVALID_HANDLE_VALUE ) { HANDLE hTempPipe = &hPipe; HANDLE temp; DBUG_PRINT( "quit", ("Closing named pipes") ); hPipe = INVALID_HANDLE_VALUE; CancelIo( hTempPipe ); DisconnectNamedPipe( hTempPipe ); CloseHandle( hTempPipe ); /* Create connection to the handle named pipe handler to break the loop */ if ((temp = CreateFile(szPipeName, GENERIC_READ | GENERIC_WRITE, 0, NULL, OPEN_EXISTING, 0, NULL )) != INVALID_HANDLE_VALUE) { WaitNamedPipe(szPipeName, 1000); DWORD dwMode = PIPE_READMODE_BYTE | PIPE_WAIT; SetNamedPipeHandleState(temp, &dwMode, NULL, NULL); CancelIo(temp); DisconnectNamedPipe(temp); CloseHandle(temp); } } #endif #ifdef HAVE_SYS_UN_H Loading Loading @@ -1857,6 +1870,14 @@ The server will not act as a slave."); if (opt_slow_log) open_log(&mysql_slow_log, glob_hostname, opt_slow_logname, "-slow.log", LOG_NORMAL); #ifdef __WIN__ #define MYSQL_ERR_FILE "mysql.err" if (!opt_console) { freopen(MYSQL_ERR_FILE,"a+",stdout); freopen(MYSQL_ERR_FILE,"a+",stderr); } #endif if (ha_init()) { sql_print_error("Can't init databases"); Loading @@ -1882,13 +1903,8 @@ The server will not act as a slave."); ft_init_stopwords(ft_precompiled_stopwords); /* SerG */ #ifdef __WIN__ #define MYSQL_ERR_FILE "mysql.err" if (!opt_console) { freopen(MYSQL_ERR_FILE,"a+",stdout); freopen(MYSQL_ERR_FILE,"a+",stderr); FreeConsole(); // Remove window } #endif /* Loading Loading @@ -1986,7 +2002,7 @@ The server will not act as a slave."); #ifdef __NT__ if (hPipe == INVALID_HANDLE_VALUE && !have_tcpip) { sql_print_error("TCP/IP must be installed on Win98 platforms"); sql_print_error("TCP/IP or Named Pipes should be installed on NT OS"); } else { Loading Loading @@ -2044,14 +2060,20 @@ The server will not act as a slave."); #ifdef EXTRA_DEBUG sql_print_error("After lock_thread_count"); #endif #else #endif /* Wait until cleanup is done */ (void) pthread_mutex_lock(&LOCK_thread_count); while (!ready_to_exit) { pthread_cond_wait(&COND_thread_count,&LOCK_thread_count); } (void) pthread_mutex_unlock(&LOCK_thread_count); #ifdef __WIN__ if (Service.IsNT()) { if(start_mode) { if (WaitForSingleObject(hEventShutdown,1000)==WAIT_TIMEOUT) Service.Stop(); } else { Service.SetShutdownEvent(0); Loading @@ -2064,14 +2086,6 @@ The server will not act as a slave."); if(hEventShutdown) CloseHandle(hEventShutdown); } #endif /* Wait until cleanup is done */ (void) pthread_mutex_lock(&LOCK_thread_count); while (!ready_to_exit) { pthread_cond_wait(&COND_thread_count,&LOCK_thread_count); } (void) pthread_mutex_unlock(&LOCK_thread_count); my_end(opt_endinfo ? MY_CHECK_ERROR | MY_GIVE_INFO : 0); exit(0); return(0); /* purecov: deadcode */ Loading sql/nt_servc.cc +2 −2 Original line number Diff line number Diff line Loading @@ -28,7 +28,7 @@ NTService::NTService() //time-out variables nStartTimeOut = 15000; nStopTimeOut = 15000; nStopTimeOut = 86400000; nPauseTimeOut = 5000; nResumeTimeOut = 5000; Loading Loading @@ -253,7 +253,7 @@ void NTService::ServiceMain(DWORD argc, LPTSTR *argv) WaitForSingleObject (pService->hExitEvent, INFINITE); // wait for thread to exit if (WaitForSingleObject (pService->hThreadHandle, 1000) == WAIT_TIMEOUT) if (WaitForSingleObject (pService->hThreadHandle, INFINITE) == WAIT_TIMEOUT) CloseHandle(pService->hThreadHandle); pService->Exit(0); Loading Loading
sql/mysqld.cc +46 −32 Original line number Diff line number Diff line Loading @@ -471,12 +471,25 @@ static void close_connections(void) #ifdef __NT__ if ( hPipe != INVALID_HANDLE_VALUE ) { HANDLE hTempPipe = &hPipe; HANDLE temp; DBUG_PRINT( "quit", ("Closing named pipes") ); hPipe = INVALID_HANDLE_VALUE; CancelIo( hTempPipe ); DisconnectNamedPipe( hTempPipe ); CloseHandle( hTempPipe ); /* Create connection to the handle named pipe handler to break the loop */ if ((temp = CreateFile(szPipeName, GENERIC_READ | GENERIC_WRITE, 0, NULL, OPEN_EXISTING, 0, NULL )) != INVALID_HANDLE_VALUE) { WaitNamedPipe(szPipeName, 1000); DWORD dwMode = PIPE_READMODE_BYTE | PIPE_WAIT; SetNamedPipeHandleState(temp, &dwMode, NULL, NULL); CancelIo(temp); DisconnectNamedPipe(temp); CloseHandle(temp); } } #endif #ifdef HAVE_SYS_UN_H Loading Loading @@ -1857,6 +1870,14 @@ The server will not act as a slave."); if (opt_slow_log) open_log(&mysql_slow_log, glob_hostname, opt_slow_logname, "-slow.log", LOG_NORMAL); #ifdef __WIN__ #define MYSQL_ERR_FILE "mysql.err" if (!opt_console) { freopen(MYSQL_ERR_FILE,"a+",stdout); freopen(MYSQL_ERR_FILE,"a+",stderr); } #endif if (ha_init()) { sql_print_error("Can't init databases"); Loading @@ -1882,13 +1903,8 @@ The server will not act as a slave."); ft_init_stopwords(ft_precompiled_stopwords); /* SerG */ #ifdef __WIN__ #define MYSQL_ERR_FILE "mysql.err" if (!opt_console) { freopen(MYSQL_ERR_FILE,"a+",stdout); freopen(MYSQL_ERR_FILE,"a+",stderr); FreeConsole(); // Remove window } #endif /* Loading Loading @@ -1986,7 +2002,7 @@ The server will not act as a slave."); #ifdef __NT__ if (hPipe == INVALID_HANDLE_VALUE && !have_tcpip) { sql_print_error("TCP/IP must be installed on Win98 platforms"); sql_print_error("TCP/IP or Named Pipes should be installed on NT OS"); } else { Loading Loading @@ -2044,14 +2060,20 @@ The server will not act as a slave."); #ifdef EXTRA_DEBUG sql_print_error("After lock_thread_count"); #endif #else #endif /* Wait until cleanup is done */ (void) pthread_mutex_lock(&LOCK_thread_count); while (!ready_to_exit) { pthread_cond_wait(&COND_thread_count,&LOCK_thread_count); } (void) pthread_mutex_unlock(&LOCK_thread_count); #ifdef __WIN__ if (Service.IsNT()) { if(start_mode) { if (WaitForSingleObject(hEventShutdown,1000)==WAIT_TIMEOUT) Service.Stop(); } else { Service.SetShutdownEvent(0); Loading @@ -2064,14 +2086,6 @@ The server will not act as a slave."); if(hEventShutdown) CloseHandle(hEventShutdown); } #endif /* Wait until cleanup is done */ (void) pthread_mutex_lock(&LOCK_thread_count); while (!ready_to_exit) { pthread_cond_wait(&COND_thread_count,&LOCK_thread_count); } (void) pthread_mutex_unlock(&LOCK_thread_count); my_end(opt_endinfo ? MY_CHECK_ERROR | MY_GIVE_INFO : 0); exit(0); return(0); /* purecov: deadcode */ Loading
sql/nt_servc.cc +2 −2 Original line number Diff line number Diff line Loading @@ -28,7 +28,7 @@ NTService::NTService() //time-out variables nStartTimeOut = 15000; nStopTimeOut = 15000; nStopTimeOut = 86400000; nPauseTimeOut = 5000; nResumeTimeOut = 5000; Loading Loading @@ -253,7 +253,7 @@ void NTService::ServiceMain(DWORD argc, LPTSTR *argv) WaitForSingleObject (pService->hExitEvent, INFINITE); // wait for thread to exit if (WaitForSingleObject (pService->hThreadHandle, 1000) == WAIT_TIMEOUT) if (WaitForSingleObject (pService->hThreadHandle, INFINITE) == WAIT_TIMEOUT) CloseHandle(pService->hThreadHandle); pService->Exit(0); Loading