mirror of
https://github.com/MariaDB/server.git
synced 2025-01-31 11:01:52 +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_key_delete pthread_rwlock_rdlock pthread_setprio \
|
||||||
pthread_setprio_np pthread_setschedparam pthread_sigmask readlink \
|
pthread_setprio_np pthread_setschedparam pthread_sigmask readlink \
|
||||||
realpath rename rint rwlock_init setupterm \
|
realpath rename rint rwlock_init setupterm \
|
||||||
shmget shmat shmdt shmctl \
|
shmget shmat shmdt shmctl sigaction \
|
||||||
sighold sigset sigthreadmask \
|
sighold sigset sigthreadmask \
|
||||||
snprintf socket stpcpy strcasecmp strerror strnlen strpbrk strstr strtol \
|
snprintf socket stpcpy strcasecmp strerror strnlen strpbrk strstr strtol \
|
||||||
strtoll strtoul strtoull tell tempnam thr_setconcurrency vidattr)
|
strtoll strtoul strtoull tell tempnam thr_setconcurrency vidattr)
|
||||||
|
@ -3097,7 +3097,8 @@ ndb_transporter_opt_objs=""
|
||||||
if test "$ac_cv_func_shmget" = "yes" &&
|
if test "$ac_cv_func_shmget" = "yes" &&
|
||||||
test "$ac_cv_func_shmat" = "yes" &&
|
test "$ac_cv_func_shmat" = "yes" &&
|
||||||
test "$ac_cv_func_shmdt" = "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
|
then
|
||||||
AC_DEFINE([NDB_SHM_TRANSPORTER], [1],
|
AC_DEFINE([NDB_SHM_TRANSPORTER], [1],
|
||||||
[Including Ndb Cluster DB shared memory transporter])
|
[Including Ndb Cluster DB shared memory transporter])
|
||||||
|
|
|
@ -26,8 +26,6 @@
|
||||||
#include <InputStream.hpp>
|
#include <InputStream.hpp>
|
||||||
#include <OutputStream.hpp>
|
#include <OutputStream.hpp>
|
||||||
|
|
||||||
extern int g_shm_pid;
|
|
||||||
|
|
||||||
SHM_Transporter::SHM_Transporter(TransporterRegistry &t_reg,
|
SHM_Transporter::SHM_Transporter(TransporterRegistry &t_reg,
|
||||||
const char *lHostName,
|
const char *lHostName,
|
||||||
const char *rHostName,
|
const char *rHostName,
|
||||||
|
|
|
@ -50,8 +50,6 @@
|
||||||
#include <EventLogger.hpp>
|
#include <EventLogger.hpp>
|
||||||
extern EventLogger g_eventLogger;
|
extern EventLogger g_eventLogger;
|
||||||
|
|
||||||
int g_shm_pid = 0;
|
|
||||||
|
|
||||||
SocketServer::Session * TransporterService::newSession(NDB_SOCKET_TYPE sockfd)
|
SocketServer::Session * TransporterService::newSession(NDB_SOCKET_TYPE sockfd)
|
||||||
{
|
{
|
||||||
DBUG_ENTER("SocketServer::Session * TransporterService::newSession");
|
DBUG_ENTER("SocketServer::Session * TransporterService::newSession");
|
||||||
|
@ -1322,7 +1320,22 @@ TransporterRegistry::startReceiving()
|
||||||
|
|
||||||
#ifdef NDB_SHM_TRANSPORTER
|
#ifdef NDB_SHM_TRANSPORTER
|
||||||
m_shm_own_pid = getpid();
|
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
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Add table
Reference in a new issue