mirror of
https://github.com/MariaDB/server.git
synced 2025-01-18 21:12:26 +01:00
Merge joreland@bk-internal.mysql.com:/home/bk/mysql-4.1
into mysql.com:/home/jonas/src/mysql-4.1
This commit is contained in:
commit
000c676059
3 changed files with 19 additions and 7 deletions
|
@ -1924,7 +1924,7 @@ AC_CHECK_FUNCS(alarm bcmp bfill bmove bzero chsize cuserid fchmod fcntl \
|
|||
pthread_key_delete pthread_rwlock_rdlock pthread_setprio \
|
||||
pthread_setprio_np pthread_setschedparam pthread_sigmask readlink \
|
||||
realpath rename rint rwlock_init setupterm \
|
||||
shmget shmat shmdt shmctl \
|
||||
shmget shmat shmdt shmctl sigaction \
|
||||
sighold sigset sigthreadmask \
|
||||
snprintf socket stpcpy strcasecmp strerror strnlen strpbrk strstr strtol \
|
||||
strtoll strtoul strtoull tell tempnam thr_setconcurrency vidattr)
|
||||
|
@ -3097,7 +3097,8 @@ ndb_transporter_opt_objs=""
|
|||
if test "$ac_cv_func_shmget" = "yes" &&
|
||||
test "$ac_cv_func_shmat" = "yes" &&
|
||||
test "$ac_cv_func_shmdt" = "yes" &&
|
||||
test "$ac_cv_func_shmctl" = "yes"
|
||||
test "$ac_cv_func_shmctl" = "yes" &&
|
||||
test "$ac_cv_func_sigaction" = "yes"
|
||||
then
|
||||
AC_DEFINE([NDB_SHM_TRANSPORTER], [1],
|
||||
[Including Ndb Cluster DB shared memory transporter])
|
||||
|
|
|
@ -26,8 +26,6 @@
|
|||
#include <InputStream.hpp>
|
||||
#include <OutputStream.hpp>
|
||||
|
||||
extern int g_shm_pid;
|
||||
|
||||
SHM_Transporter::SHM_Transporter(TransporterRegistry &t_reg,
|
||||
const char *lHostName,
|
||||
const char *rHostName,
|
||||
|
|
|
@ -50,8 +50,6 @@
|
|||
#include <EventLogger.hpp>
|
||||
extern EventLogger g_eventLogger;
|
||||
|
||||
int g_shm_pid = 0;
|
||||
|
||||
SocketServer::Session * TransporterService::newSession(NDB_SOCKET_TYPE sockfd)
|
||||
{
|
||||
DBUG_ENTER("SocketServer::Session * TransporterService::newSession");
|
||||
|
@ -1322,7 +1320,22 @@ TransporterRegistry::startReceiving()
|
|||
|
||||
#ifdef NDB_SHM_TRANSPORTER
|
||||
m_shm_own_pid = getpid();
|
||||
signal(SIGUSR1, shm_sig_handler);
|
||||
struct sigaction sa;
|
||||
sa.sa_handler = shm_sig_handler;
|
||||
sigemptyset(&sa.sa_mask);
|
||||
sa.sa_flags = 0;
|
||||
int ret;
|
||||
while((ret = sigaction(SIGUSR1, &sa, 0)) == -1 && errno == EINTR);
|
||||
if(ret != 0)
|
||||
{
|
||||
g_eventLogger.error("Failed to install signal handler for SHM transporter"
|
||||
" errno: %d (%s)", errno,
|
||||
#ifdef HAVE_STRERROR
|
||||
strerror(errno));
|
||||
#else
|
||||
"");
|
||||
#endif
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in a new issue