Automatic merge.
This commit is contained in:
commit
24337653f1
@ -167,8 +167,8 @@ static void* thr_filewriter_fun(void* data);
|
||||
static logfile_t* logmanager_get_logfile(logmanager_t* lm, logfile_id_t id);
|
||||
static bool logmanager_register(bool writep);
|
||||
static void logmanager_unregister(void);
|
||||
static bool logmanager_init_nomutex(void** p_ctx, int argc, char* argv[]);
|
||||
static void logmanager_done_nomutex(void** ctx);
|
||||
static bool logmanager_init_nomutex(int argc, char* argv[]);
|
||||
static void logmanager_done_nomutex(void);
|
||||
static int logmanager_write_log(
|
||||
logfile_id_t id,
|
||||
bool flush,
|
||||
@ -232,7 +232,6 @@ const char* get_logpath_default(void)
|
||||
}
|
||||
|
||||
static bool logmanager_init_nomutex(
|
||||
void** p_ctx,
|
||||
int argc,
|
||||
char* argv[])
|
||||
{
|
||||
@ -283,7 +282,7 @@ static bool logmanager_init_nomutex(
|
||||
return_succp:
|
||||
if (err != 0) {
|
||||
/** This releases memory of all created objects */
|
||||
logmanager_done_nomutex(NULL);
|
||||
logmanager_done_nomutex();
|
||||
fprintf(stderr, "Initializing logmanager failed.\n");
|
||||
}
|
||||
return succp;
|
||||
@ -312,7 +311,6 @@ return_succp:
|
||||
*
|
||||
*/
|
||||
bool skygw_logmanager_init(
|
||||
void** p_ctx,
|
||||
int argc,
|
||||
char* argv[])
|
||||
{
|
||||
@ -327,7 +325,7 @@ bool skygw_logmanager_init(
|
||||
goto return_succp;
|
||||
}
|
||||
|
||||
succp = logmanager_init_nomutex(p_ctx, argc, argv);
|
||||
succp = logmanager_init_nomutex(argc, argv);
|
||||
|
||||
return_succp:
|
||||
release_lock(&lmlock);
|
||||
@ -337,8 +335,7 @@ return_succp:
|
||||
}
|
||||
|
||||
|
||||
static void logmanager_done_nomutex(
|
||||
void** ctx)
|
||||
static void logmanager_done_nomutex(void)
|
||||
{
|
||||
int i;
|
||||
logfile_t* lf;
|
||||
@ -391,7 +388,7 @@ static void logmanager_done_nomutex(
|
||||
*/
|
||||
void skygw_logmanager_exit(void)
|
||||
{
|
||||
skygw_logmanager_done(NULL);
|
||||
skygw_logmanager_done();
|
||||
}
|
||||
|
||||
/**
|
||||
@ -411,8 +408,7 @@ void skygw_logmanager_exit(void)
|
||||
* @details Stops file writing thread, releases filewriter, and logfiles.
|
||||
*
|
||||
*/
|
||||
void skygw_logmanager_done(
|
||||
void** p_ctx)
|
||||
void skygw_logmanager_done(void)
|
||||
{
|
||||
ss_dfprintf(stderr, ">> skygw_logmanager_done\n");
|
||||
|
||||
@ -440,7 +436,7 @@ void skygw_logmanager_done(
|
||||
goto return_void;
|
||||
}
|
||||
ss_dassert(lm->lm_nlinks == 0);
|
||||
logmanager_done_nomutex(p_ctx);
|
||||
logmanager_done_nomutex();
|
||||
|
||||
return_void:
|
||||
release_lock(&lmlock);
|
||||
@ -846,7 +842,6 @@ static blockbuf_t* blockbuf_init(
|
||||
|
||||
|
||||
int skygw_log_write_flush(
|
||||
void* ctx,
|
||||
logfile_id_t id,
|
||||
char* str,
|
||||
...)
|
||||
@ -898,7 +893,6 @@ return_err:
|
||||
|
||||
|
||||
int skygw_log_write(
|
||||
void* ctx,
|
||||
logfile_id_t id,
|
||||
char* str,
|
||||
...)
|
||||
@ -1021,7 +1015,7 @@ static bool logmanager_register(
|
||||
}
|
||||
|
||||
if (lm == NULL) {
|
||||
succp = logmanager_init_nomutex(NULL, 0, NULL);
|
||||
succp = logmanager_init_nomutex(0, NULL);
|
||||
}
|
||||
}
|
||||
/** if logmanager existed or was succesfully restarted, increase link */
|
||||
|
@ -45,22 +45,17 @@ typedef enum { UNINIT = 0, INIT, RUN, DONE } flat_obj_state_t;
|
||||
|
||||
EXTERN_C_BLOCK_BEGIN
|
||||
|
||||
bool skygw_logmanager_init(void** buf, int argc, char* argv[]);
|
||||
void skygw_logmanager_done(void** buf);
|
||||
bool skygw_logmanager_init(int argc, char* argv[]);
|
||||
void skygw_logmanager_done(void);
|
||||
void skygw_logmanager_exit(void);
|
||||
/** not implemented yet */
|
||||
/**
|
||||
* init write buffer list for private use for this client. Same as
|
||||
* skygw_logmanager_init except that arguments are not set.
|
||||
*/
|
||||
bool skygw_log_init(void** writebuf);
|
||||
|
||||
/**
|
||||
* free private write buffer list
|
||||
*/
|
||||
void skygw_log_done(void* writebuf);
|
||||
int skygw_log_write(void* writebuf, logfile_id_t id, char* format, ...);
|
||||
void skygw_log_done(void);
|
||||
int skygw_log_write(logfile_id_t id, char* format, ...);
|
||||
int skygw_log_flush(logfile_id_t id);
|
||||
int skygw_log_write_flush(void* writebuf, logfile_id_t id, char* format, ...);
|
||||
int skygw_log_write_flush(logfile_id_t id, char* format, ...);
|
||||
|
||||
|
||||
|
||||
@ -75,29 +70,3 @@ const char* get_msg_suffix_default(void);
|
||||
const char* get_err_prefix_default(void);
|
||||
const char* get_err_suffix_default(void);
|
||||
const char* get_logpath_default(void);
|
||||
|
||||
/*
|
||||
bool logfile_write(
|
||||
skygw_ctx_t* ctx,
|
||||
logmgr_t* mgr,
|
||||
logfile_id_t id,
|
||||
char* msg);
|
||||
|
||||
bool logfile_write_flush(
|
||||
skygw_ctx_t* ctx,
|
||||
logmgr_t* mgr,
|
||||
logfile_id_t id,
|
||||
char* msg);
|
||||
|
||||
bool logfile_flush(
|
||||
logmgr_t* mgr,
|
||||
logfile_id_t id);
|
||||
|
||||
bool logfile_init(
|
||||
logmgr_t* mgr,
|
||||
logfile_id_t id);
|
||||
|
||||
void logfile_done(
|
||||
logmgr_t* mgr,
|
||||
logfile_id_t id);
|
||||
*/
|
||||
|
@ -64,13 +64,12 @@ int main(int argc, char* argv[])
|
||||
fprintf(stderr, "Couldn't register exit function.\n");
|
||||
}
|
||||
|
||||
r = skygw_logmanager_init(NULL, argc, argv);
|
||||
r = skygw_logmanager_init( argc, argv);
|
||||
ss_dassert(r);
|
||||
|
||||
t = time(NULL);
|
||||
tm = *(localtime(&t));
|
||||
err = skygw_log_write_flush(NULL,
|
||||
LOGFILE_ERROR,
|
||||
err = skygw_log_write_flush(LOGFILE_ERROR,
|
||||
"%04d %02d/%02d %02d.%02d.%02d",
|
||||
tm.tm_year+1900,
|
||||
tm.tm_mon+1,
|
||||
@ -79,57 +78,57 @@ int main(int argc, char* argv[])
|
||||
tm.tm_min,
|
||||
tm.tm_sec);
|
||||
|
||||
skygw_logmanager_init(NULL, argc, argv);
|
||||
skygw_logmanager_init( argc, argv);
|
||||
logstr = ("First write with flush.");
|
||||
err = skygw_log_write_flush(NULL, LOGFILE_ERROR, logstr);
|
||||
err = skygw_log_write_flush(LOGFILE_ERROR, logstr);
|
||||
|
||||
logstr = ("Second write with flush.");
|
||||
err = skygw_log_write_flush(NULL, LOGFILE_ERROR, logstr);
|
||||
err = skygw_log_write_flush(LOGFILE_ERROR, logstr);
|
||||
|
||||
logstr = ("Third write, no flush.");
|
||||
err = skygw_log_write(NULL, LOGFILE_ERROR, logstr);
|
||||
err = skygw_log_write(LOGFILE_ERROR, logstr);
|
||||
|
||||
logstr = ("Fourth write, no flush. Next flush only.");
|
||||
err = skygw_log_write(NULL, LOGFILE_ERROR, logstr);
|
||||
err = skygw_log_write(LOGFILE_ERROR, logstr);
|
||||
|
||||
err = skygw_log_flush(LOGFILE_ERROR);
|
||||
|
||||
logstr = "My name is %s %d years and %d months.";
|
||||
err = skygw_log_write(NULL, LOGFILE_TRACE, logstr, "TraceyTracey", 3, 7);
|
||||
err = skygw_log_write(LOGFILE_TRACE, logstr, "TraceyTracey", 3, 7);
|
||||
skygw_log_flush(LOGFILE_TRACE);
|
||||
|
||||
logstr = "My name is Tracey Tracey 47 years and 7 months.";
|
||||
err = skygw_log_write(NULL, LOGFILE_TRACE, logstr);
|
||||
err = skygw_log_write(LOGFILE_TRACE, logstr);
|
||||
|
||||
logstr = "My name is Stacey %s";
|
||||
err = skygw_log_write_flush(NULL, LOGFILE_TRACE, logstr, " ");
|
||||
skygw_logmanager_done(NULL);
|
||||
err = skygw_log_write_flush(LOGFILE_TRACE, logstr, " ");
|
||||
skygw_logmanager_done();
|
||||
|
||||
logstr = "My name is Philip";
|
||||
err = skygw_log_write(NULL, LOGFILE_TRACE, logstr);
|
||||
err = skygw_log_write(LOGFILE_TRACE, logstr);
|
||||
|
||||
logstr = "Philip.";
|
||||
err = skygw_log_write(NULL, LOGFILE_TRACE, logstr);
|
||||
err = skygw_log_write(LOGFILE_TRACE, logstr);
|
||||
|
||||
logstr = "Ph%dlip.";
|
||||
err = skygw_log_write(NULL, LOGFILE_TRACE, logstr, 1);
|
||||
err = skygw_log_write(LOGFILE_TRACE, logstr, 1);
|
||||
|
||||
skygw_logmanager_init(NULL, argc, argv);
|
||||
skygw_logmanager_init( argc, argv);
|
||||
logstr = ("A terrible error has occurred!");
|
||||
err = skygw_log_write_flush(NULL, LOGFILE_ERROR, logstr);
|
||||
err = skygw_log_write_flush(LOGFILE_ERROR, logstr);
|
||||
|
||||
logstr = ("Hi, how are you?");
|
||||
err = skygw_log_write(NULL, LOGFILE_MESSAGE, logstr);
|
||||
err = skygw_log_write(LOGFILE_MESSAGE, logstr);
|
||||
|
||||
logstr = ("I'm doing fine!");
|
||||
err = skygw_log_write(NULL, LOGFILE_MESSAGE, logstr);
|
||||
err = skygw_log_write(LOGFILE_MESSAGE, logstr);
|
||||
|
||||
logstr = ("Rather more surprising, at least at first sight, is the fact that a reference to a[i] can also be written as *(a+i). In evaluating a[i], C converts it to *(a+i) immediately; the two forms are equivalent. Applying the operators & to both parts of this equivalence, it follows that &a[i] and a+i are also identical: a+i is the address of the i-th element beyond a.");
|
||||
err = skygw_log_write(NULL, LOGFILE_ERROR, logstr);
|
||||
err = skygw_log_write(LOGFILE_ERROR, logstr);
|
||||
|
||||
logstr = ("I was wondering, you know, it has been such a lovely weather whole morning and I thought that would you like to come to my place and have a little piece of cheese with us. Just me and my mom - and you, of course. Then, if you wish, we could listen to the radio and keep company for our little Steven, my mom's cat, you know.");
|
||||
err = skygw_log_write(NULL, LOGFILE_MESSAGE, logstr);
|
||||
skygw_logmanager_done(NULL);
|
||||
err = skygw_log_write(LOGFILE_MESSAGE, logstr);
|
||||
skygw_logmanager_done();
|
||||
|
||||
#if defined(TEST1)
|
||||
|
||||
@ -168,7 +167,7 @@ int main(int argc, char* argv[])
|
||||
pthread_join(thr[i]->tid, NULL);
|
||||
}
|
||||
/** This is to release memory */
|
||||
skygw_logmanager_done(NULL);
|
||||
skygw_logmanager_done();
|
||||
|
||||
simple_mutex_unlock(mtx);
|
||||
|
||||
@ -217,7 +216,7 @@ int main(int argc, char* argv[])
|
||||
pthread_join(thr[i]->tid, NULL);
|
||||
}
|
||||
/** This is to release memory */
|
||||
skygw_logmanager_done(NULL);
|
||||
skygw_logmanager_done();
|
||||
|
||||
simple_mutex_unlock(mtx);
|
||||
|
||||
@ -243,70 +242,70 @@ static void* thr_run(
|
||||
char* logstr;
|
||||
int err;
|
||||
|
||||
skygw_logmanager_init(NULL, 0, NULL);
|
||||
skygw_logmanager_done(NULL);
|
||||
skygw_logmanager_init( 0, NULL);
|
||||
skygw_logmanager_done();
|
||||
skygw_log_flush(LOGFILE_MESSAGE);
|
||||
logstr = ("Hi, how are you?");
|
||||
err = skygw_log_write(NULL, LOGFILE_MESSAGE, logstr);
|
||||
err = skygw_log_write(LOGFILE_MESSAGE, logstr);
|
||||
ss_dassert(err == 0);
|
||||
skygw_logmanager_done(NULL);
|
||||
skygw_logmanager_done();
|
||||
skygw_log_flush(LOGFILE_TRACE);
|
||||
skygw_log_flush(LOGFILE_MESSAGE);
|
||||
logstr = ("I was wondering, you know, it has been such a lovely weather whole morning and I thought that would you like to come to my place and have a little piece of cheese with us. Just me and my mom - and you, of course. Then, if you wish, we could listen to the radio and keep company for our little Steven, my mom's cat, you know.");
|
||||
ss_dassert(err == 0);
|
||||
err = skygw_log_write(NULL, LOGFILE_MESSAGE, logstr);
|
||||
skygw_logmanager_init(NULL, 0, NULL);
|
||||
err = skygw_log_write(LOGFILE_MESSAGE, logstr);
|
||||
skygw_logmanager_init( 0, NULL);
|
||||
logstr = ("Testing. One, two, three\n");
|
||||
err = skygw_log_write(NULL, LOGFILE_ERROR, logstr);
|
||||
err = skygw_log_write(LOGFILE_ERROR, logstr);
|
||||
ss_dassert(err == 0);
|
||||
skygw_logmanager_init(NULL, 0, NULL);
|
||||
skygw_logmanager_init(NULL, 0, NULL);
|
||||
skygw_logmanager_init( 0, NULL);
|
||||
skygw_logmanager_init( 0, NULL);
|
||||
skygw_log_flush(LOGFILE_ERROR);
|
||||
logstr = ("For automatic and register variables, it is done each time the function or block is entered.");
|
||||
err = skygw_log_write(NULL, LOGFILE_TRACE, logstr);
|
||||
err = skygw_log_write(LOGFILE_TRACE, logstr);
|
||||
ss_dassert(err == 0);
|
||||
skygw_logmanager_done(NULL);
|
||||
skygw_logmanager_init(NULL, 0, NULL);
|
||||
skygw_logmanager_done();
|
||||
skygw_logmanager_init( 0, NULL);
|
||||
logstr = ("Rather more surprising, at least at first sight, is the fact that a reference to a[i] can also be written as *(a+i). In evaluating a[i], C converts it to *(a+i) immediately; the two forms are equivalent. Applying the operatos & to both parts of this equivalence, it follows that &a[i] and a+i are also identical: a+i is the address of the i-th element beyond a.");
|
||||
err = skygw_log_write(NULL, LOGFILE_ERROR, logstr);
|
||||
err = skygw_log_write(LOGFILE_ERROR, logstr);
|
||||
ss_dassert(err == 0);
|
||||
skygw_logmanager_init(NULL, 0, NULL);
|
||||
skygw_logmanager_done(NULL);
|
||||
skygw_logmanager_init( 0, NULL);
|
||||
skygw_logmanager_done();
|
||||
skygw_log_flush(LOGFILE_ERROR);
|
||||
skygw_logmanager_done(NULL);
|
||||
skygw_logmanager_done(NULL);
|
||||
skygw_logmanager_done();
|
||||
skygw_logmanager_done();
|
||||
logstr = ("..and you?");
|
||||
err = skygw_log_write(NULL, LOGFILE_MESSAGE, logstr);
|
||||
err = skygw_log_write(LOGFILE_MESSAGE, logstr);
|
||||
ss_dassert(err == 0);
|
||||
skygw_logmanager_init(NULL, 0, NULL);
|
||||
skygw_logmanager_init(NULL, 0, NULL);
|
||||
skygw_logmanager_init( 0, NULL);
|
||||
skygw_logmanager_init( 0, NULL);
|
||||
logstr = ("For automatic and register variables, it is done each time the function or block is entered.");
|
||||
err = skygw_log_write(NULL, LOGFILE_TRACE, logstr);
|
||||
err = skygw_log_write(LOGFILE_TRACE, logstr);
|
||||
ss_dassert(err == 0);
|
||||
skygw_logmanager_init(NULL, 0, NULL);
|
||||
skygw_logmanager_init( 0, NULL);
|
||||
logstr = ("Rather more surprising, at least at first sight, is the fact that a reference to a[i] can also be written as *(a+i). In evaluating a[i], C converts it to *(a+i) immediately; the two forms are equivalent. Applying the operatos & to both parts of this equivalence, it follows that &a[i] and a+i are also identical: a+i is the address of the i-th element beyond a.");
|
||||
err = skygw_log_write(NULL, LOGFILE_ERROR, logstr);
|
||||
err = skygw_log_write(LOGFILE_ERROR, logstr);
|
||||
ss_dassert(err == 0);
|
||||
skygw_logmanager_init(NULL, 0, NULL);
|
||||
skygw_logmanager_init( 0, NULL);
|
||||
logstr = ("..... and you too?");
|
||||
err = skygw_log_write(NULL, LOGFILE_MESSAGE, logstr);
|
||||
err = skygw_log_write(LOGFILE_MESSAGE, logstr);
|
||||
ss_dassert(err == 0);
|
||||
skygw_logmanager_done(NULL);
|
||||
skygw_logmanager_done();
|
||||
skygw_log_flush(LOGFILE_TRACE);
|
||||
logstr = ("For automatic and register variables, it is done each time the function or block is entered.");
|
||||
err = skygw_log_write(NULL, LOGFILE_TRACE, logstr);
|
||||
err = skygw_log_write(LOGFILE_TRACE, logstr);
|
||||
ss_dassert(err == 0);
|
||||
skygw_logmanager_done(NULL);
|
||||
skygw_logmanager_done();
|
||||
logstr = ("Testing. One, two, three, four\n");
|
||||
err = skygw_log_write(NULL, LOGFILE_ERROR, logstr);
|
||||
err = skygw_log_write(LOGFILE_ERROR, logstr);
|
||||
ss_dassert(err == 0);
|
||||
skygw_logmanager_init(NULL, 0, NULL);
|
||||
skygw_logmanager_init( 0, NULL);
|
||||
logstr = ("Testing. One, two, three, .. where was I?\n");
|
||||
err = skygw_log_write(NULL, LOGFILE_ERROR, logstr);
|
||||
err = skygw_log_write(LOGFILE_ERROR, logstr);
|
||||
ss_dassert(err == 0);
|
||||
skygw_logmanager_init(NULL, 0, NULL);
|
||||
skygw_logmanager_init(NULL, 0, NULL);
|
||||
skygw_logmanager_done(NULL);
|
||||
skygw_logmanager_init( 0, NULL);
|
||||
skygw_logmanager_init( 0, NULL);
|
||||
skygw_logmanager_done();
|
||||
simple_mutex_lock(td->mtx, TRUE);
|
||||
*td->nactive -= 1;
|
||||
simple_mutex_unlock(td->mtx);
|
||||
@ -355,8 +354,7 @@ static void* thr_run_morelog(
|
||||
|
||||
for (i=0; i<NITER; i++) {
|
||||
char* str = logs[rand()%nmsg];
|
||||
err = skygw_log_write(NULL,
|
||||
(logfile_id_t)(rand()%(LOGFILE_LAST+1)),
|
||||
err = skygw_log_write((logfile_id_t)(rand()%(LOGFILE_LAST+1)),
|
||||
"%s - iteration # %d",
|
||||
str,
|
||||
i);
|
||||
|
@ -28,24 +28,24 @@ DEST=$(HOME)/usr/local/skysql
|
||||
|
||||
all:
|
||||
(cd inih/extra ; make -f Makefile.static)
|
||||
(cd core ; make)
|
||||
(cd modules/routing; make)
|
||||
(cd modules/routing/readwritesplit; make)
|
||||
(cd modules/protocol; make)
|
||||
(cd modules/monitor; make)
|
||||
(cd core ; touch depend.mk ; make)
|
||||
(cd modules/routing; touch depend.mk ;make)
|
||||
(cd modules/routing/readwritesplit; touch depend.mk ;make)
|
||||
(cd modules/protocol; touch depend.mk ;make)
|
||||
(cd modules/monitor; touch depend.mk ;make)
|
||||
|
||||
clean:
|
||||
(cd Documentation; rm -rf html)
|
||||
(cd core; make clean)
|
||||
(cd modules/routing; make clean)
|
||||
(cd modules/protocol; make clean)
|
||||
(cd modules/monitor; make clean)
|
||||
(cd core; touch depend.mk ; make clean)
|
||||
(cd modules/routing; touch depend.mk ; make clean)
|
||||
(cd modules/protocol; touch depend.mk ; make clean)
|
||||
(cd modules/monitor; touch depend.mk ; make clean)
|
||||
|
||||
depend:
|
||||
(cd core; make depend)
|
||||
(cd modules/routing; make depend)
|
||||
(cd modules/protocol; make depend)
|
||||
(cd modules/monitor; make depend)
|
||||
(cd modules/routing; touch depend.mk ; make depend)
|
||||
(cd modules/protocol; touch depend.mk ; make depend)
|
||||
(cd modules/monitor; touch depend.mk ; make depend)
|
||||
|
||||
documentation:
|
||||
doxygen doxygate
|
||||
|
@ -3,15 +3,15 @@
|
||||
#
|
||||
#
|
||||
#
|
||||
# A genererate configuration session
|
||||
# Configuration session
|
||||
# Valid options are:
|
||||
# threads=<number of epoll threads>
|
||||
[gateway]
|
||||
threads=1
|
||||
|
||||
|
||||
# A series service definition
|
||||
# Valid option are
|
||||
# A series of service definition
|
||||
# Valid options are
|
||||
# router=<name of router module>
|
||||
# servers=<server name>,<server name>,...
|
||||
# user=<User to fetch password inforamtion with>
|
||||
|
@ -103,6 +103,10 @@ depend:
|
||||
install: maxscale maxkeys maxpasswd
|
||||
@mkdir -p $(DEST)/bin
|
||||
install -D maxscale maxkeys maxpasswd $(DEST)/bin
|
||||
THIS=`pwd`
|
||||
cd $(DEST)
|
||||
- `./maxkeys $(DEST)/MaxScale/etc/.secrets`
|
||||
cd $(THIS)
|
||||
install -D $(MARIADB_SRC_PATH)/libmysqld/libmysqld.so.18 $(DEST)/lib
|
||||
|
||||
include depend.mk
|
||||
|
@ -18,6 +18,7 @@
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
#include <errno.h>
|
||||
#define _XOPEN_SOURCE
|
||||
#include <unistd.h>
|
||||
#include <crypt.h>
|
||||
@ -48,7 +49,17 @@ static int admin_init = 0;
|
||||
static char *ADMIN_ERR_NOMEM = "Out of memory";
|
||||
static char *ADMIN_ERR_FILEOPEN = "Unable to create password file";
|
||||
static char *ADMIN_ERR_DUPLICATE = "Duplicate username specified";
|
||||
static char *ADMIN_ERR_USERNOTFOUND = "User not found";
|
||||
static char *ADMIN_ERR_AUTHENTICATION = "Authentication failed";
|
||||
static char *ADMIN_ERR_FILEAPPEND = "Unable to append to password file";
|
||||
static char *ADMIN_ERR_PWDFILEOPEN = "Failed to open password file";
|
||||
static char *ADMIN_ERR_TMPFILEOPEN = "Failed to open temporary password file";
|
||||
static char *ADMIN_ERR_PWDFILEACCESS = "Failed to access password file";
|
||||
static char *ADMIN_ERR_DELLASTUSER = "Deleting user failed, deleting the "
|
||||
"last user is forbidden";
|
||||
static char *ADMIN_SUCCESS = NULL;
|
||||
|
||||
static const int LINELEN=80;
|
||||
|
||||
/**
|
||||
* Admin Users initialisation
|
||||
@ -142,15 +153,15 @@ char fname[1024], *home, *cpasswd;
|
||||
sprintf(fname, "/usr/local/skysql/MaxScale/etc/passwd");
|
||||
if (users == NULL)
|
||||
{
|
||||
skygw_log_write(NULL, LOGFILE_MESSAGE, "Create initial password file.\n");
|
||||
skygw_log_write( LOGFILE_MESSAGE, "Create initial password file.\n");
|
||||
if ((users = users_alloc()) == NULL)
|
||||
return ADMIN_ERR_NOMEM;
|
||||
if ((fp = fopen(fname, "w")) == NULL)
|
||||
{
|
||||
skygw_log_write(NULL, LOGFILE_ERROR,
|
||||
skygw_log_write( LOGFILE_ERROR,
|
||||
"Unable to create password file %s.\n",
|
||||
fname);
|
||||
return ADMIN_ERR_FILEOPEN;
|
||||
return ADMIN_ERR_PWDFILEOPEN;
|
||||
}
|
||||
fclose(fp);
|
||||
}
|
||||
@ -162,16 +173,161 @@ char fname[1024], *home, *cpasswd;
|
||||
users_add(users, uname, cpasswd);
|
||||
if ((fp = fopen(fname, "a")) == NULL)
|
||||
{
|
||||
skygw_log_write(NULL, LOGFILE_ERROR,
|
||||
skygw_log_write( LOGFILE_ERROR,
|
||||
"Unable to append to password file %s.\n",
|
||||
fname);
|
||||
return ADMIN_ERR_FILEAPPEND;
|
||||
}
|
||||
fprintf(fp, "%s:%s\n", uname, cpasswd);
|
||||
fclose(fp);
|
||||
return NULL;
|
||||
return ADMIN_SUCCESS;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Remove maxscale user from in-memory structure and from password file
|
||||
*
|
||||
* @param uname Name of the new user
|
||||
* @param passwd Password for the new user
|
||||
* @return NULL on success or an error string on failure
|
||||
*/
|
||||
char* admin_remove_user(
|
||||
char* uname,
|
||||
char* passwd)
|
||||
{
|
||||
FILE* fp;
|
||||
FILE* fp_tmp;
|
||||
char fname[1024];
|
||||
char fname_tmp[1024];
|
||||
char* home;
|
||||
char fusr[LINELEN];
|
||||
char fpwd[LINELEN];
|
||||
char line[LINELEN];
|
||||
fpos_t rpos;
|
||||
int n_deleted;
|
||||
|
||||
if (!admin_search_user(uname)) {
|
||||
skygw_log_write(
|
||||
LOGFILE_MESSAGE,
|
||||
"Couldn't find user %s. Removing user failed", uname);
|
||||
return ADMIN_ERR_USERNOTFOUND;
|
||||
}
|
||||
|
||||
if (admin_verify(uname, passwd) == 0) {
|
||||
skygw_log_write(
|
||||
LOGFILE_MESSAGE,
|
||||
"Authentication failed, wrong user/password combination.\n"
|
||||
"Removing user failed");
|
||||
return ADMIN_ERR_AUTHENTICATION;
|
||||
}
|
||||
|
||||
|
||||
/** Remove user from in-memory structure */
|
||||
n_deleted = users_delete(users, uname);
|
||||
|
||||
if (n_deleted == 0) {
|
||||
skygw_log_write(
|
||||
LOGFILE_MESSAGE,
|
||||
"Deleting the only user is forbidden. add new user "
|
||||
"before deleting the old one.\n");
|
||||
return ADMIN_ERR_DELLASTUSER;
|
||||
}
|
||||
/**
|
||||
* Open passwd file and remove user from the file.
|
||||
*/
|
||||
if ((home = getenv("MAXSCALE_HOME")) != NULL) {
|
||||
sprintf(fname, "%s/etc/passwd", home);
|
||||
sprintf(fname_tmp, "%s/etc/passwd_tmp", home);
|
||||
} else {
|
||||
sprintf(fname, "/usr/local/skysql/MaxScale/etc/passwd");
|
||||
sprintf(fname_tmp, "/usr/local/skysql/MaxScale/etc/passwd_tmp");
|
||||
}
|
||||
/**
|
||||
* Rewrite passwd file from memory.
|
||||
*/
|
||||
if ((fp = fopen(fname, "r")) == NULL)
|
||||
{
|
||||
int err = errno;
|
||||
skygw_log_write( LOGFILE_ERROR,
|
||||
"Unable to open password file %s : errno %d.\n"
|
||||
"Removing user from file failed; it must be done manually.",
|
||||
fname,
|
||||
err);
|
||||
return ADMIN_ERR_PWDFILEOPEN;
|
||||
}
|
||||
/**
|
||||
* Open temporary passwd file.
|
||||
*/
|
||||
if ((fp_tmp = fopen(fname_tmp, "w")) == NULL)
|
||||
{
|
||||
int err = errno;
|
||||
skygw_log_write( LOGFILE_ERROR,
|
||||
"Unable to open tmp file %s : errno %d.\n"
|
||||
"Removing user from passwd file failed; "
|
||||
"it must be done manually.",
|
||||
fname_tmp,
|
||||
err);
|
||||
fclose(fp);
|
||||
return ADMIN_ERR_TMPFILEOPEN;
|
||||
}
|
||||
|
||||
/**
|
||||
* Scan passwd and copy all but matching lines to temp file.
|
||||
*/
|
||||
if (fgetpos(fp, &rpos) != 0) {
|
||||
int err = errno;
|
||||
skygw_log_write( LOGFILE_ERROR,
|
||||
"Unable to process passwd file %s : errno %d.\n"
|
||||
"Removing user from file failed, and must be done manually.",
|
||||
fname,
|
||||
err);
|
||||
return ADMIN_ERR_PWDFILEACCESS;
|
||||
}
|
||||
|
||||
while (fscanf(fp, "%[^:]:%s\n", fusr, fpwd) == 2)
|
||||
{
|
||||
/**
|
||||
* Compare username what was found from passwd file.
|
||||
* Unmatching lines are copied to tmp file.
|
||||
*/
|
||||
if (strncmp(uname, fusr, strlen(uname)+1) != 0) {
|
||||
fsetpos(fp, &rpos); /** one step back */
|
||||
fgets(line, LINELEN, fp);
|
||||
fputs(line, fp_tmp);
|
||||
}
|
||||
|
||||
if (fgetpos(fp, &rpos) != 0) {
|
||||
int err = errno;
|
||||
skygw_log_write( LOGFILE_ERROR,
|
||||
"Unable to process passwd file %s : errno %d.\n"
|
||||
"Removing user from file failed, and must be "
|
||||
"done manually.",
|
||||
fname,
|
||||
err);
|
||||
return ADMIN_ERR_PWDFILEACCESS;
|
||||
}
|
||||
}
|
||||
fclose(fp);
|
||||
/**
|
||||
* Replace original passwd file with new.
|
||||
*/
|
||||
if (rename(fname_tmp, fname)) {
|
||||
int err = errno;
|
||||
skygw_log_write( LOGFILE_ERROR,
|
||||
"Unable to rename new passwd file %s : errno %d.\n"
|
||||
"Rename it to %s manually.",
|
||||
fname_tmp,
|
||||
err,
|
||||
fname);
|
||||
return ADMIN_ERR_PWDFILEACCESS;
|
||||
}
|
||||
|
||||
fclose(fp_tmp);
|
||||
return ADMIN_SUCCESS;
|
||||
}
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* Check for existance of the user
|
||||
*
|
||||
@ -179,7 +335,7 @@ char fname[1024], *home, *cpasswd;
|
||||
* @return Non-zero if the user exists
|
||||
*/
|
||||
int
|
||||
admin_test_user(char *user)
|
||||
admin_search_user(char *user)
|
||||
{
|
||||
initialise();
|
||||
if (users == NULL)
|
||||
|
@ -170,7 +170,7 @@ CONFIG_CONTEXT *obj;
|
||||
{
|
||||
char *type = config_get_value(obj->parameters, "type");
|
||||
if (type == NULL)
|
||||
skygw_log_write(NULL, LOGFILE_ERROR, "Object %s has no type\n", obj->object);
|
||||
skygw_log_write( LOGFILE_ERROR, "Object %s has no type\n", obj->object);
|
||||
else if (!strcmp(type, "service"))
|
||||
{
|
||||
char *router = config_get_value(obj->parameters, "router");
|
||||
@ -183,7 +183,7 @@ CONFIG_CONTEXT *obj;
|
||||
serviceSetUser(obj->element, user, auth);
|
||||
}
|
||||
else
|
||||
skygw_log_write(NULL, LOGFILE_ERROR, "No router define for service '%s'\n",
|
||||
skygw_log_write( LOGFILE_ERROR, "No router define for service '%s'\n",
|
||||
obj->object);
|
||||
}
|
||||
else if (!strcmp(type, "server"))
|
||||
@ -399,7 +399,7 @@ SERVER *server;
|
||||
{
|
||||
char *type = config_get_value(obj->parameters, "type");
|
||||
if (type == NULL)
|
||||
skygw_log_write(NULL, LOGFILE_ERROR, "Object %s has no type\n", obj->object);
|
||||
skygw_log_write( LOGFILE_ERROR, "Object %s has no type\n", obj->object);
|
||||
else if (!strcmp(type, "service"))
|
||||
{
|
||||
char *router = config_get_value(obj->parameters, "router");
|
||||
@ -422,7 +422,7 @@ SERVER *server;
|
||||
}
|
||||
}
|
||||
else
|
||||
skygw_log_write(NULL, LOGFILE_ERROR, "No router defined for service '%s'\n",
|
||||
skygw_log_write( LOGFILE_ERROR, "No router defined for service '%s'\n",
|
||||
obj->object);
|
||||
}
|
||||
else if (!strcmp(type, "server"))
|
||||
|
@ -102,19 +102,19 @@ getUsers(SERVICE *service, struct users *users)
|
||||
serviceGetUser(service, &service_user, &service_passwd);
|
||||
/** multi-thread environment requires that thread init succeeds. */
|
||||
if (mysql_thread_init()) {
|
||||
skygw_log_write_flush(NULL, LOGFILE_ERROR, "ERROR : mysql_thread_init failed.\n");
|
||||
skygw_log_write_flush(LOGFILE_ERROR, "ERROR : mysql_thread_init failed.\n");
|
||||
return -1;
|
||||
}
|
||||
|
||||
con = mysql_init(NULL);
|
||||
|
||||
if (con == NULL) {
|
||||
skygw_log_write(NULL, LOGFILE_ERROR, "mysql_init: %s\n", mysql_error(con));
|
||||
skygw_log_write( LOGFILE_ERROR, "mysql_init: %s\n", mysql_error(con));
|
||||
return -1;
|
||||
}
|
||||
|
||||
if (mysql_options(con, MYSQL_OPT_USE_REMOTE_CONNECTION, NULL)) {
|
||||
skygw_log_write_flush(NULL, LOGFILE_ERROR, "Fatal : failed to set external connection. "
|
||||
skygw_log_write_flush(LOGFILE_ERROR, "Fatal : failed to set external connection. "
|
||||
"It is needed for backend server connections. Exiting.\n");
|
||||
return -1;
|
||||
}
|
||||
@ -139,15 +139,17 @@ getUsers(SERVICE *service, struct users *users)
|
||||
free(dpwd);
|
||||
if (server == NULL)
|
||||
{
|
||||
skygw_log_write(NULL, LOGFILE_ERROR,
|
||||
"Unable to find a to load user data from for service %s\n",
|
||||
skygw_log_write(
|
||||
LOGFILE_ERROR,
|
||||
"Unable to get user data from backend database for service "
|
||||
"%s. Missing server information.",
|
||||
service->name);
|
||||
mysql_close(con);
|
||||
return -1;
|
||||
}
|
||||
|
||||
if (mysql_query(con, "SELECT user, password FROM mysql.user")) {
|
||||
skygw_log_write(NULL, LOGFILE_ERROR,
|
||||
skygw_log_write( LOGFILE_ERROR,
|
||||
"Loading users for service %s encountered error: %s\n",
|
||||
service->name, mysql_error(con));
|
||||
mysql_close(con);
|
||||
@ -157,7 +159,7 @@ getUsers(SERVICE *service, struct users *users)
|
||||
result = mysql_store_result(con);
|
||||
|
||||
if (result == NULL) {
|
||||
skygw_log_write(NULL, LOGFILE_ERROR,
|
||||
skygw_log_write( LOGFILE_ERROR,
|
||||
"Loading users for service %s encountered error: %s\n",
|
||||
service->name, mysql_error(con));
|
||||
mysql_close(con);
|
||||
|
@ -126,7 +126,7 @@ dcb_free(DCB *dcb)
|
||||
{
|
||||
if (dcb->state == DCB_STATE_ZOMBIE)
|
||||
{
|
||||
skygw_log_write(NULL, LOGFILE_ERROR, "Call to free a DCB that is already a zombie.\n");
|
||||
skygw_log_write( LOGFILE_ERROR, "Call to free a DCB that is already a zombie.\n");
|
||||
return;
|
||||
}
|
||||
|
||||
@ -144,7 +144,7 @@ dcb_free(DCB *dcb)
|
||||
{
|
||||
if (ptr == dcb)
|
||||
{
|
||||
skygw_log_write(NULL, LOGFILE_ERROR, "Attempt to add DCB to zombie queue "
|
||||
skygw_log_write( LOGFILE_ERROR, "Attempt to add DCB to zombie queue "
|
||||
"when it is already in the queue");
|
||||
break;
|
||||
}
|
||||
@ -285,7 +285,7 @@ GWPROTOCOL *funcs;
|
||||
if ((funcs = (GWPROTOCOL *)load_module(protocol, MODULE_PROTOCOL)) == NULL)
|
||||
{
|
||||
dcb_final_free(dcb);
|
||||
skygw_log_write(NULL, LOGFILE_ERROR,
|
||||
skygw_log_write( LOGFILE_ERROR,
|
||||
"Failed to load protocol module for %s, feee dcb %p\n", protocol, dcb);
|
||||
return NULL;
|
||||
}
|
||||
@ -295,7 +295,7 @@ GWPROTOCOL *funcs;
|
||||
if ((dcb->fd = dcb->func.connect(dcb, server, session)) == -1)
|
||||
{
|
||||
dcb_final_free(dcb);
|
||||
skygw_log_write(NULL, LOGFILE_ERROR, "Failed to connect to server %s:%d, free dcb %p\n",
|
||||
skygw_log_write( LOGFILE_ERROR, "Failed to connect to server %s:%d, free dcb %p\n",
|
||||
server->name, server->port, dcb);
|
||||
return NULL;
|
||||
}
|
||||
|
@ -1,673 +0,0 @@
|
||||
atomic.o: atomic.c
|
||||
buffer.o: buffer.c /usr/include/stdlib.h /usr/include/features.h \
|
||||
/usr/include/sys/cdefs.h /usr/include/bits/wordsize.h \
|
||||
/usr/include/gnu/stubs.h /usr/include/gnu/stubs-64.h \
|
||||
/usr/lib/gcc/x86_64-redhat-linux/4.4.7/include/stddef.h \
|
||||
/usr/include/bits/waitflags.h /usr/include/bits/waitstatus.h \
|
||||
/usr/include/endian.h /usr/include/bits/endian.h \
|
||||
/usr/include/bits/byteswap.h /usr/include/sys/types.h \
|
||||
/usr/include/bits/types.h /usr/include/bits/typesizes.h \
|
||||
/usr/include/time.h /usr/include/sys/select.h /usr/include/bits/select.h \
|
||||
/usr/include/bits/sigset.h /usr/include/bits/time.h \
|
||||
/usr/include/sys/sysmacros.h /usr/include/bits/pthreadtypes.h \
|
||||
/usr/include/alloca.h ../include/buffer.h ../include/atomic.h
|
||||
spinlock.o: spinlock.c ../include/spinlock.h ../include/thread.h \
|
||||
/usr/include/pthread.h /usr/include/features.h /usr/include/sys/cdefs.h \
|
||||
/usr/include/bits/wordsize.h /usr/include/gnu/stubs.h \
|
||||
/usr/include/gnu/stubs-64.h /usr/include/endian.h \
|
||||
/usr/include/bits/endian.h /usr/include/bits/byteswap.h \
|
||||
/usr/include/sched.h /usr/include/bits/types.h \
|
||||
/usr/include/bits/typesizes.h \
|
||||
/usr/lib/gcc/x86_64-redhat-linux/4.4.7/include/stddef.h \
|
||||
/usr/include/time.h /usr/include/bits/sched.h /usr/include/bits/time.h \
|
||||
/usr/include/xlocale.h /usr/include/bits/pthreadtypes.h \
|
||||
/usr/include/bits/setjmp.h ../include/atomic.h
|
||||
gateway.o: gateway.c ../include/gw.h /usr/include/stdio.h \
|
||||
/usr/include/features.h /usr/include/sys/cdefs.h \
|
||||
/usr/include/bits/wordsize.h /usr/include/gnu/stubs.h \
|
||||
/usr/include/gnu/stubs-64.h \
|
||||
/usr/lib/gcc/x86_64-redhat-linux/4.4.7/include/stddef.h \
|
||||
/usr/include/bits/types.h /usr/include/bits/typesizes.h \
|
||||
/usr/include/libio.h /usr/include/_G_config.h /usr/include/wchar.h \
|
||||
/usr/lib/gcc/x86_64-redhat-linux/4.4.7/include/stdarg.h \
|
||||
/usr/include/bits/stdio_lim.h /usr/include/bits/sys_errlist.h \
|
||||
/usr/include/ctype.h /usr/include/endian.h /usr/include/bits/endian.h \
|
||||
/usr/include/bits/byteswap.h /usr/include/xlocale.h /usr/include/errno.h \
|
||||
/usr/include/bits/errno.h /usr/include/linux/errno.h \
|
||||
/usr/include/asm/errno.h /usr/include/asm-generic/errno.h \
|
||||
/usr/include/asm-generic/errno-base.h /usr/include/netdb.h \
|
||||
/usr/include/netinet/in.h /usr/include/stdint.h \
|
||||
/usr/include/bits/wchar.h /usr/include/sys/socket.h \
|
||||
/usr/include/sys/uio.h /usr/include/sys/types.h /usr/include/time.h \
|
||||
/usr/include/sys/select.h /usr/include/bits/select.h \
|
||||
/usr/include/bits/sigset.h /usr/include/bits/time.h \
|
||||
/usr/include/sys/sysmacros.h /usr/include/bits/pthreadtypes.h \
|
||||
/usr/include/bits/uio.h /usr/include/bits/socket.h \
|
||||
/usr/include/bits/sockaddr.h /usr/include/asm/socket.h \
|
||||
/usr/include/asm-generic/socket.h /usr/include/asm/sockios.h \
|
||||
/usr/include/asm-generic/sockios.h /usr/include/bits/in.h \
|
||||
/usr/include/rpc/netdb.h /usr/include/bits/netdb.h /usr/include/fcntl.h \
|
||||
/usr/include/bits/fcntl.h /usr/include/bits/stat.h /usr/include/unistd.h \
|
||||
/usr/include/bits/posix_opt.h /usr/include/bits/environments.h \
|
||||
/usr/include/bits/confname.h /usr/include/getopt.h /usr/include/syslog.h \
|
||||
/usr/include/sys/syslog.h /usr/include/bits/syslog-path.h \
|
||||
/usr/include/string.h /usr/include/stdlib.h \
|
||||
/usr/include/bits/waitflags.h /usr/include/bits/waitstatus.h \
|
||||
/usr/include/alloca.h /usr/include/pwd.h /usr/include/sys/epoll.h \
|
||||
/usr/include/signal.h /usr/include/bits/signum.h \
|
||||
/usr/include/bits/siginfo.h /usr/include/bits/sigaction.h \
|
||||
/usr/include/bits/sigcontext.h /usr/include/bits/sigstack.h \
|
||||
/usr/include/sys/ucontext.h /usr/include/bits/sigthread.h \
|
||||
/usr/include/sys/ioctl.h /usr/include/bits/ioctls.h \
|
||||
/usr/include/asm/ioctls.h /usr/include/asm-generic/ioctls.h \
|
||||
/usr/include/linux/ioctl.h /usr/include/asm/ioctl.h \
|
||||
/usr/include/asm-generic/ioctl.h /usr/include/bits/ioctl-types.h \
|
||||
/usr/include/sys/ttydefaults.h /usr/include/arpa/inet.h \
|
||||
/usr/lib/gcc/x86_64-redhat-linux/4.4.7/include/stdbool.h \
|
||||
../include/gateway_mysql.h ../include/dcb.h ../include/spinlock.h \
|
||||
../include/thread.h /usr/include/pthread.h /usr/include/sched.h \
|
||||
/usr/include/bits/sched.h /usr/include/bits/setjmp.h ../include/buffer.h \
|
||||
../include/gwbitmask.h ../include/mysql_protocol.h ../include/dcb.h \
|
||||
../include/service.h ../include/server.h ../include/session.h \
|
||||
../include/modules.h ../include/config.h ../include/poll.h \
|
||||
/home/skysql/mariadb-5.5.32/include/mysql.h \
|
||||
/home/skysql/mariadb-5.5.32/include/mysql_version.h \
|
||||
/home/skysql/mariadb-5.5.32/include/mysql_com.h \
|
||||
/home/skysql/mariadb-5.5.32/include/mysql_time.h \
|
||||
/home/skysql/mariadb-5.5.32/include/my_list.h \
|
||||
/home/skysql/mariadb-5.5.32/include/typelib.h \
|
||||
/home/skysql/mariadb-5.5.32/include/my_alloc.h ../include/monitor.h \
|
||||
/usr/include/sys/stat.h /home/skysql/workspace/utils/skygw_utils.h \
|
||||
/home/skysql/workspace/utils/skygw_types.h /usr/include/math.h \
|
||||
/usr/include/bits/huge_val.h /usr/include/bits/huge_valf.h \
|
||||
/usr/include/bits/huge_vall.h /usr/include/bits/inf.h \
|
||||
/usr/include/bits/nan.h /usr/include/bits/mathdef.h \
|
||||
/usr/include/bits/mathcalls.h /home/skysql/workspace/utils/skygw_debug.h \
|
||||
/usr/include/assert.h /home/skysql/workspace/log_manager/log_manager.h
|
||||
gateway_mysql_protocol.o: gateway_mysql_protocol.c ../include/gw.h \
|
||||
/usr/include/stdio.h /usr/include/features.h /usr/include/sys/cdefs.h \
|
||||
/usr/include/bits/wordsize.h /usr/include/gnu/stubs.h \
|
||||
/usr/include/gnu/stubs-64.h \
|
||||
/usr/lib/gcc/x86_64-redhat-linux/4.4.7/include/stddef.h \
|
||||
/usr/include/bits/types.h /usr/include/bits/typesizes.h \
|
||||
/usr/include/libio.h /usr/include/_G_config.h /usr/include/wchar.h \
|
||||
/usr/lib/gcc/x86_64-redhat-linux/4.4.7/include/stdarg.h \
|
||||
/usr/include/bits/stdio_lim.h /usr/include/bits/sys_errlist.h \
|
||||
/usr/include/ctype.h /usr/include/endian.h /usr/include/bits/endian.h \
|
||||
/usr/include/bits/byteswap.h /usr/include/xlocale.h /usr/include/errno.h \
|
||||
/usr/include/bits/errno.h /usr/include/linux/errno.h \
|
||||
/usr/include/asm/errno.h /usr/include/asm-generic/errno.h \
|
||||
/usr/include/asm-generic/errno-base.h /usr/include/netdb.h \
|
||||
/usr/include/netinet/in.h /usr/include/stdint.h \
|
||||
/usr/include/bits/wchar.h /usr/include/sys/socket.h \
|
||||
/usr/include/sys/uio.h /usr/include/sys/types.h /usr/include/time.h \
|
||||
/usr/include/sys/select.h /usr/include/bits/select.h \
|
||||
/usr/include/bits/sigset.h /usr/include/bits/time.h \
|
||||
/usr/include/sys/sysmacros.h /usr/include/bits/pthreadtypes.h \
|
||||
/usr/include/bits/uio.h /usr/include/bits/socket.h \
|
||||
/usr/include/bits/sockaddr.h /usr/include/asm/socket.h \
|
||||
/usr/include/asm-generic/socket.h /usr/include/asm/sockios.h \
|
||||
/usr/include/asm-generic/sockios.h /usr/include/bits/in.h \
|
||||
/usr/include/rpc/netdb.h /usr/include/bits/netdb.h /usr/include/fcntl.h \
|
||||
/usr/include/bits/fcntl.h /usr/include/bits/stat.h /usr/include/unistd.h \
|
||||
/usr/include/bits/posix_opt.h /usr/include/bits/environments.h \
|
||||
/usr/include/bits/confname.h /usr/include/getopt.h /usr/include/syslog.h \
|
||||
/usr/include/sys/syslog.h /usr/include/bits/syslog-path.h \
|
||||
/usr/include/string.h /usr/include/stdlib.h \
|
||||
/usr/include/bits/waitflags.h /usr/include/bits/waitstatus.h \
|
||||
/usr/include/alloca.h /usr/include/pwd.h /usr/include/sys/epoll.h \
|
||||
/usr/include/signal.h /usr/include/bits/signum.h \
|
||||
/usr/include/bits/siginfo.h /usr/include/bits/sigaction.h \
|
||||
/usr/include/bits/sigcontext.h /usr/include/bits/sigstack.h \
|
||||
/usr/include/sys/ucontext.h /usr/include/bits/sigthread.h \
|
||||
/usr/include/sys/ioctl.h /usr/include/bits/ioctls.h \
|
||||
/usr/include/asm/ioctls.h /usr/include/asm-generic/ioctls.h \
|
||||
/usr/include/linux/ioctl.h /usr/include/asm/ioctl.h \
|
||||
/usr/include/asm-generic/ioctl.h /usr/include/bits/ioctl-types.h \
|
||||
/usr/include/sys/ttydefaults.h /usr/include/arpa/inet.h \
|
||||
/usr/lib/gcc/x86_64-redhat-linux/4.4.7/include/stdbool.h \
|
||||
../include/gateway_mysql.h ../include/dcb.h ../include/spinlock.h \
|
||||
../include/thread.h /usr/include/pthread.h /usr/include/sched.h \
|
||||
/usr/include/bits/sched.h /usr/include/bits/setjmp.h ../include/buffer.h \
|
||||
../include/gwbitmask.h ../include/mysql_protocol.h ../include/dcb.h \
|
||||
../include/session.h /usr/include/openssl/sha.h \
|
||||
/usr/include/openssl/e_os2.h /usr/include/openssl/opensslconf.h \
|
||||
/usr/include/openssl/opensslconf-x86_64.h
|
||||
gw_utils.o: gw_utils.c ../include/gw.h /usr/include/stdio.h \
|
||||
/usr/include/features.h /usr/include/sys/cdefs.h \
|
||||
/usr/include/bits/wordsize.h /usr/include/gnu/stubs.h \
|
||||
/usr/include/gnu/stubs-64.h \
|
||||
/usr/lib/gcc/x86_64-redhat-linux/4.4.7/include/stddef.h \
|
||||
/usr/include/bits/types.h /usr/include/bits/typesizes.h \
|
||||
/usr/include/libio.h /usr/include/_G_config.h /usr/include/wchar.h \
|
||||
/usr/lib/gcc/x86_64-redhat-linux/4.4.7/include/stdarg.h \
|
||||
/usr/include/bits/stdio_lim.h /usr/include/bits/sys_errlist.h \
|
||||
/usr/include/ctype.h /usr/include/endian.h /usr/include/bits/endian.h \
|
||||
/usr/include/bits/byteswap.h /usr/include/xlocale.h /usr/include/errno.h \
|
||||
/usr/include/bits/errno.h /usr/include/linux/errno.h \
|
||||
/usr/include/asm/errno.h /usr/include/asm-generic/errno.h \
|
||||
/usr/include/asm-generic/errno-base.h /usr/include/netdb.h \
|
||||
/usr/include/netinet/in.h /usr/include/stdint.h \
|
||||
/usr/include/bits/wchar.h /usr/include/sys/socket.h \
|
||||
/usr/include/sys/uio.h /usr/include/sys/types.h /usr/include/time.h \
|
||||
/usr/include/sys/select.h /usr/include/bits/select.h \
|
||||
/usr/include/bits/sigset.h /usr/include/bits/time.h \
|
||||
/usr/include/sys/sysmacros.h /usr/include/bits/pthreadtypes.h \
|
||||
/usr/include/bits/uio.h /usr/include/bits/socket.h \
|
||||
/usr/include/bits/sockaddr.h /usr/include/asm/socket.h \
|
||||
/usr/include/asm-generic/socket.h /usr/include/asm/sockios.h \
|
||||
/usr/include/asm-generic/sockios.h /usr/include/bits/in.h \
|
||||
/usr/include/rpc/netdb.h /usr/include/bits/netdb.h /usr/include/fcntl.h \
|
||||
/usr/include/bits/fcntl.h /usr/include/bits/stat.h /usr/include/unistd.h \
|
||||
/usr/include/bits/posix_opt.h /usr/include/bits/environments.h \
|
||||
/usr/include/bits/confname.h /usr/include/getopt.h /usr/include/syslog.h \
|
||||
/usr/include/sys/syslog.h /usr/include/bits/syslog-path.h \
|
||||
/usr/include/string.h /usr/include/stdlib.h \
|
||||
/usr/include/bits/waitflags.h /usr/include/bits/waitstatus.h \
|
||||
/usr/include/alloca.h /usr/include/pwd.h /usr/include/sys/epoll.h \
|
||||
/usr/include/signal.h /usr/include/bits/signum.h \
|
||||
/usr/include/bits/siginfo.h /usr/include/bits/sigaction.h \
|
||||
/usr/include/bits/sigcontext.h /usr/include/bits/sigstack.h \
|
||||
/usr/include/sys/ucontext.h /usr/include/bits/sigthread.h \
|
||||
/usr/include/sys/ioctl.h /usr/include/bits/ioctls.h \
|
||||
/usr/include/asm/ioctls.h /usr/include/asm-generic/ioctls.h \
|
||||
/usr/include/linux/ioctl.h /usr/include/asm/ioctl.h \
|
||||
/usr/include/asm-generic/ioctl.h /usr/include/bits/ioctl-types.h \
|
||||
/usr/include/sys/ttydefaults.h /usr/include/arpa/inet.h \
|
||||
/usr/lib/gcc/x86_64-redhat-linux/4.4.7/include/stdbool.h \
|
||||
../include/gateway_mysql.h ../include/dcb.h ../include/spinlock.h \
|
||||
../include/thread.h /usr/include/pthread.h /usr/include/sched.h \
|
||||
/usr/include/bits/sched.h /usr/include/bits/setjmp.h ../include/buffer.h \
|
||||
../include/gwbitmask.h ../include/mysql_protocol.h ../include/dcb.h \
|
||||
../include/session.h
|
||||
utils.o: utils.c ../include/gw.h /usr/include/stdio.h \
|
||||
/usr/include/features.h /usr/include/sys/cdefs.h \
|
||||
/usr/include/bits/wordsize.h /usr/include/gnu/stubs.h \
|
||||
/usr/include/gnu/stubs-64.h \
|
||||
/usr/lib/gcc/x86_64-redhat-linux/4.4.7/include/stddef.h \
|
||||
/usr/include/bits/types.h /usr/include/bits/typesizes.h \
|
||||
/usr/include/libio.h /usr/include/_G_config.h /usr/include/wchar.h \
|
||||
/usr/lib/gcc/x86_64-redhat-linux/4.4.7/include/stdarg.h \
|
||||
/usr/include/bits/stdio_lim.h /usr/include/bits/sys_errlist.h \
|
||||
/usr/include/ctype.h /usr/include/endian.h /usr/include/bits/endian.h \
|
||||
/usr/include/bits/byteswap.h /usr/include/xlocale.h /usr/include/errno.h \
|
||||
/usr/include/bits/errno.h /usr/include/linux/errno.h \
|
||||
/usr/include/asm/errno.h /usr/include/asm-generic/errno.h \
|
||||
/usr/include/asm-generic/errno-base.h /usr/include/netdb.h \
|
||||
/usr/include/netinet/in.h /usr/include/stdint.h \
|
||||
/usr/include/bits/wchar.h /usr/include/sys/socket.h \
|
||||
/usr/include/sys/uio.h /usr/include/sys/types.h /usr/include/time.h \
|
||||
/usr/include/sys/select.h /usr/include/bits/select.h \
|
||||
/usr/include/bits/sigset.h /usr/include/bits/time.h \
|
||||
/usr/include/sys/sysmacros.h /usr/include/bits/pthreadtypes.h \
|
||||
/usr/include/bits/uio.h /usr/include/bits/socket.h \
|
||||
/usr/include/bits/sockaddr.h /usr/include/asm/socket.h \
|
||||
/usr/include/asm-generic/socket.h /usr/include/asm/sockios.h \
|
||||
/usr/include/asm-generic/sockios.h /usr/include/bits/in.h \
|
||||
/usr/include/rpc/netdb.h /usr/include/bits/netdb.h /usr/include/fcntl.h \
|
||||
/usr/include/bits/fcntl.h /usr/include/bits/stat.h /usr/include/unistd.h \
|
||||
/usr/include/bits/posix_opt.h /usr/include/bits/environments.h \
|
||||
/usr/include/bits/confname.h /usr/include/getopt.h /usr/include/syslog.h \
|
||||
/usr/include/sys/syslog.h /usr/include/bits/syslog-path.h \
|
||||
/usr/include/string.h /usr/include/stdlib.h \
|
||||
/usr/include/bits/waitflags.h /usr/include/bits/waitstatus.h \
|
||||
/usr/include/alloca.h /usr/include/pwd.h /usr/include/sys/epoll.h \
|
||||
/usr/include/signal.h /usr/include/bits/signum.h \
|
||||
/usr/include/bits/siginfo.h /usr/include/bits/sigaction.h \
|
||||
/usr/include/bits/sigcontext.h /usr/include/bits/sigstack.h \
|
||||
/usr/include/sys/ucontext.h /usr/include/bits/sigthread.h \
|
||||
/usr/include/sys/ioctl.h /usr/include/bits/ioctls.h \
|
||||
/usr/include/asm/ioctls.h /usr/include/asm-generic/ioctls.h \
|
||||
/usr/include/linux/ioctl.h /usr/include/asm/ioctl.h \
|
||||
/usr/include/asm-generic/ioctl.h /usr/include/bits/ioctl-types.h \
|
||||
/usr/include/sys/ttydefaults.h /usr/include/arpa/inet.h \
|
||||
/usr/lib/gcc/x86_64-redhat-linux/4.4.7/include/stdbool.h \
|
||||
../include/gateway_mysql.h ../include/dcb.h ../include/spinlock.h \
|
||||
../include/thread.h /usr/include/pthread.h /usr/include/sched.h \
|
||||
/usr/include/bits/sched.h /usr/include/bits/setjmp.h ../include/buffer.h \
|
||||
../include/gwbitmask.h ../include/mysql_protocol.h ../include/dcb.h \
|
||||
../include/session.h ../include/mysql_protocol.h \
|
||||
/usr/include/openssl/sha.h /usr/include/openssl/e_os2.h \
|
||||
/usr/include/openssl/opensslconf.h \
|
||||
/usr/include/openssl/opensslconf-x86_64.h ../include/poll.h \
|
||||
/home/skysql/workspace/utils/skygw_utils.h \
|
||||
/home/skysql/workspace/utils/skygw_types.h /usr/include/math.h \
|
||||
/usr/include/bits/huge_val.h /usr/include/bits/huge_valf.h \
|
||||
/usr/include/bits/huge_vall.h /usr/include/bits/inf.h \
|
||||
/usr/include/bits/nan.h /usr/include/bits/mathdef.h \
|
||||
/usr/include/bits/mathcalls.h /home/skysql/workspace/utils/skygw_debug.h \
|
||||
/usr/include/assert.h /home/skysql/workspace/log_manager/log_manager.h
|
||||
dcb.o: dcb.c /usr/include/stdio.h /usr/include/features.h \
|
||||
/usr/include/sys/cdefs.h /usr/include/bits/wordsize.h \
|
||||
/usr/include/gnu/stubs.h /usr/include/gnu/stubs-64.h \
|
||||
/usr/lib/gcc/x86_64-redhat-linux/4.4.7/include/stddef.h \
|
||||
/usr/include/bits/types.h /usr/include/bits/typesizes.h \
|
||||
/usr/include/libio.h /usr/include/_G_config.h /usr/include/wchar.h \
|
||||
/usr/lib/gcc/x86_64-redhat-linux/4.4.7/include/stdarg.h \
|
||||
/usr/include/bits/stdio_lim.h /usr/include/bits/sys_errlist.h \
|
||||
/usr/include/stdlib.h /usr/include/bits/waitflags.h \
|
||||
/usr/include/bits/waitstatus.h /usr/include/endian.h \
|
||||
/usr/include/bits/endian.h /usr/include/bits/byteswap.h \
|
||||
/usr/include/sys/types.h /usr/include/time.h /usr/include/sys/select.h \
|
||||
/usr/include/bits/select.h /usr/include/bits/sigset.h \
|
||||
/usr/include/bits/time.h /usr/include/sys/sysmacros.h \
|
||||
/usr/include/bits/pthreadtypes.h /usr/include/alloca.h \
|
||||
/usr/include/string.h /usr/include/xlocale.h ../include/dcb.h \
|
||||
../include/spinlock.h ../include/thread.h /usr/include/pthread.h \
|
||||
/usr/include/sched.h /usr/include/bits/sched.h \
|
||||
/usr/include/bits/setjmp.h ../include/buffer.h ../include/gwbitmask.h \
|
||||
../include/server.h ../include/session.h ../include/service.h \
|
||||
../include/modules.h ../include/router.h /usr/include/errno.h \
|
||||
/usr/include/bits/errno.h /usr/include/linux/errno.h \
|
||||
/usr/include/asm/errno.h /usr/include/asm-generic/errno.h \
|
||||
/usr/include/asm-generic/errno-base.h ../include/gw.h \
|
||||
/usr/include/ctype.h /usr/include/netdb.h /usr/include/netinet/in.h \
|
||||
/usr/include/stdint.h /usr/include/bits/wchar.h \
|
||||
/usr/include/sys/socket.h /usr/include/sys/uio.h /usr/include/bits/uio.h \
|
||||
/usr/include/bits/socket.h /usr/include/bits/sockaddr.h \
|
||||
/usr/include/asm/socket.h /usr/include/asm-generic/socket.h \
|
||||
/usr/include/asm/sockios.h /usr/include/asm-generic/sockios.h \
|
||||
/usr/include/bits/in.h /usr/include/rpc/netdb.h \
|
||||
/usr/include/bits/netdb.h /usr/include/fcntl.h /usr/include/bits/fcntl.h \
|
||||
/usr/include/bits/stat.h /usr/include/unistd.h \
|
||||
/usr/include/bits/posix_opt.h /usr/include/bits/environments.h \
|
||||
/usr/include/bits/confname.h /usr/include/getopt.h /usr/include/syslog.h \
|
||||
/usr/include/sys/syslog.h /usr/include/bits/syslog-path.h \
|
||||
/usr/include/pwd.h /usr/include/sys/epoll.h /usr/include/signal.h \
|
||||
/usr/include/bits/signum.h /usr/include/bits/siginfo.h \
|
||||
/usr/include/bits/sigaction.h /usr/include/bits/sigcontext.h \
|
||||
/usr/include/bits/sigstack.h /usr/include/sys/ucontext.h \
|
||||
/usr/include/bits/sigthread.h /usr/include/sys/ioctl.h \
|
||||
/usr/include/bits/ioctls.h /usr/include/asm/ioctls.h \
|
||||
/usr/include/asm-generic/ioctls.h /usr/include/linux/ioctl.h \
|
||||
/usr/include/asm/ioctl.h /usr/include/asm-generic/ioctl.h \
|
||||
/usr/include/bits/ioctl-types.h /usr/include/sys/ttydefaults.h \
|
||||
/usr/include/arpa/inet.h \
|
||||
/usr/lib/gcc/x86_64-redhat-linux/4.4.7/include/stdbool.h \
|
||||
../include/gateway_mysql.h ../include/mysql_protocol.h ../include/dcb.h \
|
||||
../include/poll.h ../include/atomic.h \
|
||||
/home/skysql/workspace/utils/skygw_utils.h \
|
||||
/home/skysql/workspace/utils/skygw_types.h /usr/include/math.h \
|
||||
/usr/include/bits/huge_val.h /usr/include/bits/huge_valf.h \
|
||||
/usr/include/bits/huge_vall.h /usr/include/bits/inf.h \
|
||||
/usr/include/bits/nan.h /usr/include/bits/mathdef.h \
|
||||
/usr/include/bits/mathcalls.h /home/skysql/workspace/utils/skygw_debug.h \
|
||||
/usr/include/assert.h /home/skysql/workspace/log_manager/log_manager.h
|
||||
load_utils.o: load_utils.c /usr/include/sys/param.h \
|
||||
/usr/lib/gcc/x86_64-redhat-linux/4.4.7/include/limits.h \
|
||||
/usr/lib/gcc/x86_64-redhat-linux/4.4.7/include/syslimits.h \
|
||||
/usr/include/limits.h /usr/include/features.h /usr/include/sys/cdefs.h \
|
||||
/usr/include/bits/wordsize.h /usr/include/gnu/stubs.h \
|
||||
/usr/include/gnu/stubs-64.h /usr/include/bits/posix1_lim.h \
|
||||
/usr/include/bits/local_lim.h /usr/include/linux/limits.h \
|
||||
/usr/include/bits/posix2_lim.h /usr/include/linux/param.h \
|
||||
/usr/include/asm/param.h /usr/include/asm-generic/param.h \
|
||||
/usr/include/sys/types.h /usr/include/bits/types.h \
|
||||
/usr/include/bits/typesizes.h /usr/include/time.h \
|
||||
/usr/lib/gcc/x86_64-redhat-linux/4.4.7/include/stddef.h \
|
||||
/usr/include/endian.h /usr/include/bits/endian.h \
|
||||
/usr/include/bits/byteswap.h /usr/include/sys/select.h \
|
||||
/usr/include/bits/select.h /usr/include/bits/sigset.h \
|
||||
/usr/include/bits/time.h /usr/include/sys/sysmacros.h \
|
||||
/usr/include/bits/pthreadtypes.h /usr/include/stdio.h \
|
||||
/usr/include/libio.h /usr/include/_G_config.h /usr/include/wchar.h \
|
||||
/usr/lib/gcc/x86_64-redhat-linux/4.4.7/include/stdarg.h \
|
||||
/usr/include/bits/stdio_lim.h /usr/include/bits/sys_errlist.h \
|
||||
/usr/include/stdlib.h /usr/include/bits/waitflags.h \
|
||||
/usr/include/bits/waitstatus.h /usr/include/alloca.h \
|
||||
/usr/include/unistd.h /usr/include/bits/posix_opt.h \
|
||||
/usr/include/bits/environments.h /usr/include/bits/confname.h \
|
||||
/usr/include/getopt.h /usr/include/string.h /usr/include/xlocale.h \
|
||||
/usr/include/dlfcn.h /usr/include/bits/dlfcn.h ../include/modules.h \
|
||||
../include/dcb.h ../include/spinlock.h ../include/thread.h \
|
||||
/usr/include/pthread.h /usr/include/sched.h /usr/include/bits/sched.h \
|
||||
/usr/include/bits/setjmp.h ../include/buffer.h ../include/gwbitmask.h \
|
||||
/home/skysql/workspace/utils/skygw_utils.h \
|
||||
/home/skysql/workspace/utils/skygw_types.h /usr/include/math.h \
|
||||
/usr/include/bits/huge_val.h /usr/include/bits/huge_valf.h \
|
||||
/usr/include/bits/huge_vall.h /usr/include/bits/inf.h \
|
||||
/usr/include/bits/nan.h /usr/include/bits/mathdef.h \
|
||||
/usr/include/bits/mathcalls.h /home/skysql/workspace/utils/skygw_debug.h \
|
||||
/usr/include/assert.h /home/skysql/workspace/log_manager/log_manager.h
|
||||
session.o: session.c /usr/include/stdio.h /usr/include/features.h \
|
||||
/usr/include/sys/cdefs.h /usr/include/bits/wordsize.h \
|
||||
/usr/include/gnu/stubs.h /usr/include/gnu/stubs-64.h \
|
||||
/usr/lib/gcc/x86_64-redhat-linux/4.4.7/include/stddef.h \
|
||||
/usr/include/bits/types.h /usr/include/bits/typesizes.h \
|
||||
/usr/include/libio.h /usr/include/_G_config.h /usr/include/wchar.h \
|
||||
/usr/lib/gcc/x86_64-redhat-linux/4.4.7/include/stdarg.h \
|
||||
/usr/include/bits/stdio_lim.h /usr/include/bits/sys_errlist.h \
|
||||
/usr/include/stdlib.h /usr/include/bits/waitflags.h \
|
||||
/usr/include/bits/waitstatus.h /usr/include/endian.h \
|
||||
/usr/include/bits/endian.h /usr/include/bits/byteswap.h \
|
||||
/usr/include/sys/types.h /usr/include/time.h /usr/include/sys/select.h \
|
||||
/usr/include/bits/select.h /usr/include/bits/sigset.h \
|
||||
/usr/include/bits/time.h /usr/include/sys/sysmacros.h \
|
||||
/usr/include/bits/pthreadtypes.h /usr/include/alloca.h \
|
||||
/usr/include/unistd.h /usr/include/bits/posix_opt.h \
|
||||
/usr/include/bits/environments.h /usr/include/bits/confname.h \
|
||||
/usr/include/getopt.h /usr/include/string.h /usr/include/xlocale.h \
|
||||
../include/session.h ../include/service.h ../include/spinlock.h \
|
||||
../include/thread.h /usr/include/pthread.h /usr/include/sched.h \
|
||||
/usr/include/bits/sched.h /usr/include/bits/setjmp.h ../include/dcb.h \
|
||||
../include/buffer.h ../include/gwbitmask.h ../include/server.h \
|
||||
../include/router.h ../include/atomic.h
|
||||
service.o: service.c /usr/include/stdio.h /usr/include/features.h \
|
||||
/usr/include/sys/cdefs.h /usr/include/bits/wordsize.h \
|
||||
/usr/include/gnu/stubs.h /usr/include/gnu/stubs-64.h \
|
||||
/usr/lib/gcc/x86_64-redhat-linux/4.4.7/include/stddef.h \
|
||||
/usr/include/bits/types.h /usr/include/bits/typesizes.h \
|
||||
/usr/include/libio.h /usr/include/_G_config.h /usr/include/wchar.h \
|
||||
/usr/lib/gcc/x86_64-redhat-linux/4.4.7/include/stdarg.h \
|
||||
/usr/include/bits/stdio_lim.h /usr/include/bits/sys_errlist.h \
|
||||
/usr/include/stdlib.h /usr/include/bits/waitflags.h \
|
||||
/usr/include/bits/waitstatus.h /usr/include/endian.h \
|
||||
/usr/include/bits/endian.h /usr/include/bits/byteswap.h \
|
||||
/usr/include/sys/types.h /usr/include/time.h /usr/include/sys/select.h \
|
||||
/usr/include/bits/select.h /usr/include/bits/sigset.h \
|
||||
/usr/include/bits/time.h /usr/include/sys/sysmacros.h \
|
||||
/usr/include/bits/pthreadtypes.h /usr/include/alloca.h \
|
||||
/usr/include/string.h /usr/include/xlocale.h ../include/session.h \
|
||||
../include/service.h ../include/spinlock.h ../include/thread.h \
|
||||
/usr/include/pthread.h /usr/include/sched.h /usr/include/bits/sched.h \
|
||||
/usr/include/bits/setjmp.h ../include/dcb.h ../include/buffer.h \
|
||||
../include/gwbitmask.h ../include/server.h ../include/router.h \
|
||||
../include/modules.h ../include/users.h ../include/hashtable.h \
|
||||
../include/atomic.h ../include/dbusers.h ../include/poll.h \
|
||||
/home/skysql/workspace/utils/skygw_utils.h \
|
||||
/home/skysql/workspace/utils/skygw_types.h /usr/include/math.h \
|
||||
/usr/include/bits/huge_val.h /usr/include/bits/huge_valf.h \
|
||||
/usr/include/bits/huge_vall.h /usr/include/bits/inf.h \
|
||||
/usr/include/bits/nan.h /usr/include/bits/mathdef.h \
|
||||
/usr/include/bits/mathcalls.h /home/skysql/workspace/utils/skygw_debug.h \
|
||||
/usr/include/assert.h /usr/include/unistd.h \
|
||||
/usr/include/bits/posix_opt.h /usr/include/bits/environments.h \
|
||||
/usr/include/bits/confname.h /usr/include/getopt.h \
|
||||
/home/skysql/workspace/log_manager/log_manager.h
|
||||
server.o: server.c /usr/include/stdio.h /usr/include/features.h \
|
||||
/usr/include/sys/cdefs.h /usr/include/bits/wordsize.h \
|
||||
/usr/include/gnu/stubs.h /usr/include/gnu/stubs-64.h \
|
||||
/usr/lib/gcc/x86_64-redhat-linux/4.4.7/include/stddef.h \
|
||||
/usr/include/bits/types.h /usr/include/bits/typesizes.h \
|
||||
/usr/include/libio.h /usr/include/_G_config.h /usr/include/wchar.h \
|
||||
/usr/lib/gcc/x86_64-redhat-linux/4.4.7/include/stdarg.h \
|
||||
/usr/include/bits/stdio_lim.h /usr/include/bits/sys_errlist.h \
|
||||
/usr/include/stdlib.h /usr/include/bits/waitflags.h \
|
||||
/usr/include/bits/waitstatus.h /usr/include/endian.h \
|
||||
/usr/include/bits/endian.h /usr/include/bits/byteswap.h \
|
||||
/usr/include/sys/types.h /usr/include/time.h /usr/include/sys/select.h \
|
||||
/usr/include/bits/select.h /usr/include/bits/sigset.h \
|
||||
/usr/include/bits/time.h /usr/include/sys/sysmacros.h \
|
||||
/usr/include/bits/pthreadtypes.h /usr/include/alloca.h \
|
||||
/usr/include/string.h /usr/include/xlocale.h ../include/session.h \
|
||||
../include/server.h ../include/dcb.h ../include/spinlock.h \
|
||||
../include/thread.h /usr/include/pthread.h /usr/include/sched.h \
|
||||
/usr/include/bits/sched.h /usr/include/bits/setjmp.h ../include/buffer.h \
|
||||
../include/gwbitmask.h /home/skysql/workspace/utils/skygw_utils.h \
|
||||
/home/skysql/workspace/utils/skygw_types.h /usr/include/math.h \
|
||||
/usr/include/bits/huge_val.h /usr/include/bits/huge_valf.h \
|
||||
/usr/include/bits/huge_vall.h /usr/include/bits/inf.h \
|
||||
/usr/include/bits/nan.h /usr/include/bits/mathdef.h \
|
||||
/usr/include/bits/mathcalls.h /home/skysql/workspace/utils/skygw_debug.h \
|
||||
/usr/include/assert.h /usr/include/unistd.h \
|
||||
/usr/include/bits/posix_opt.h /usr/include/bits/environments.h \
|
||||
/usr/include/bits/confname.h /usr/include/getopt.h \
|
||||
/home/skysql/workspace/log_manager/log_manager.h
|
||||
poll.o: poll.c /usr/include/stdio.h /usr/include/features.h \
|
||||
/usr/include/sys/cdefs.h /usr/include/bits/wordsize.h \
|
||||
/usr/include/gnu/stubs.h /usr/include/gnu/stubs-64.h \
|
||||
/usr/lib/gcc/x86_64-redhat-linux/4.4.7/include/stddef.h \
|
||||
/usr/include/bits/types.h /usr/include/bits/typesizes.h \
|
||||
/usr/include/libio.h /usr/include/_G_config.h /usr/include/wchar.h \
|
||||
/usr/lib/gcc/x86_64-redhat-linux/4.4.7/include/stdarg.h \
|
||||
/usr/include/bits/stdio_lim.h /usr/include/bits/sys_errlist.h \
|
||||
/usr/include/string.h /usr/include/xlocale.h /usr/include/unistd.h \
|
||||
/usr/include/bits/posix_opt.h /usr/include/bits/environments.h \
|
||||
/usr/include/bits/confname.h /usr/include/getopt.h /usr/include/stdlib.h \
|
||||
/usr/include/bits/waitflags.h /usr/include/bits/waitstatus.h \
|
||||
/usr/include/endian.h /usr/include/bits/endian.h \
|
||||
/usr/include/bits/byteswap.h /usr/include/sys/types.h \
|
||||
/usr/include/time.h /usr/include/sys/select.h /usr/include/bits/select.h \
|
||||
/usr/include/bits/sigset.h /usr/include/bits/time.h \
|
||||
/usr/include/sys/sysmacros.h /usr/include/bits/pthreadtypes.h \
|
||||
/usr/include/alloca.h /usr/include/sys/epoll.h /usr/include/stdint.h \
|
||||
/usr/include/bits/wchar.h ../include/poll.h ../include/dcb.h \
|
||||
../include/spinlock.h ../include/thread.h /usr/include/pthread.h \
|
||||
/usr/include/sched.h /usr/include/bits/sched.h \
|
||||
/usr/include/bits/setjmp.h ../include/buffer.h ../include/gwbitmask.h \
|
||||
../include/atomic.h
|
||||
config.o: config.c /usr/include/stdio.h /usr/include/features.h \
|
||||
/usr/include/sys/cdefs.h /usr/include/bits/wordsize.h \
|
||||
/usr/include/gnu/stubs.h /usr/include/gnu/stubs-64.h \
|
||||
/usr/lib/gcc/x86_64-redhat-linux/4.4.7/include/stddef.h \
|
||||
/usr/include/bits/types.h /usr/include/bits/typesizes.h \
|
||||
/usr/include/libio.h /usr/include/_G_config.h /usr/include/wchar.h \
|
||||
/usr/lib/gcc/x86_64-redhat-linux/4.4.7/include/stdarg.h \
|
||||
/usr/include/bits/stdio_lim.h /usr/include/bits/sys_errlist.h \
|
||||
/usr/include/string.h /usr/include/xlocale.h /usr/include/stdlib.h \
|
||||
/usr/include/bits/waitflags.h /usr/include/bits/waitstatus.h \
|
||||
/usr/include/endian.h /usr/include/bits/endian.h \
|
||||
/usr/include/bits/byteswap.h /usr/include/sys/types.h \
|
||||
/usr/include/time.h /usr/include/sys/select.h /usr/include/bits/select.h \
|
||||
/usr/include/bits/sigset.h /usr/include/bits/time.h \
|
||||
/usr/include/sys/sysmacros.h /usr/include/bits/pthreadtypes.h \
|
||||
/usr/include/alloca.h ../inih/ini.h ../include/config.h \
|
||||
../include/service.h ../include/spinlock.h ../include/thread.h \
|
||||
/usr/include/pthread.h /usr/include/sched.h /usr/include/bits/sched.h \
|
||||
/usr/include/bits/setjmp.h ../include/dcb.h ../include/buffer.h \
|
||||
../include/gwbitmask.h ../include/server.h ../include/users.h \
|
||||
../include/hashtable.h ../include/atomic.h ../include/monitor.h \
|
||||
/home/skysql/workspace/utils/skygw_utils.h \
|
||||
/home/skysql/workspace/utils/skygw_types.h /usr/include/math.h \
|
||||
/usr/include/bits/huge_val.h /usr/include/bits/huge_valf.h \
|
||||
/usr/include/bits/huge_vall.h /usr/include/bits/inf.h \
|
||||
/usr/include/bits/nan.h /usr/include/bits/mathdef.h \
|
||||
/usr/include/bits/mathcalls.h /home/skysql/workspace/utils/skygw_debug.h \
|
||||
/usr/include/assert.h /usr/include/unistd.h \
|
||||
/usr/include/bits/posix_opt.h /usr/include/bits/environments.h \
|
||||
/usr/include/bits/confname.h /usr/include/getopt.h \
|
||||
/home/skysql/workspace/log_manager/log_manager.h
|
||||
users.o: users.c /usr/include/stdio.h /usr/include/features.h \
|
||||
/usr/include/sys/cdefs.h /usr/include/bits/wordsize.h \
|
||||
/usr/include/gnu/stubs.h /usr/include/gnu/stubs-64.h \
|
||||
/usr/lib/gcc/x86_64-redhat-linux/4.4.7/include/stddef.h \
|
||||
/usr/include/bits/types.h /usr/include/bits/typesizes.h \
|
||||
/usr/include/libio.h /usr/include/_G_config.h /usr/include/wchar.h \
|
||||
/usr/lib/gcc/x86_64-redhat-linux/4.4.7/include/stdarg.h \
|
||||
/usr/include/bits/stdio_lim.h /usr/include/bits/sys_errlist.h \
|
||||
/usr/include/stdlib.h /usr/include/bits/waitflags.h \
|
||||
/usr/include/bits/waitstatus.h /usr/include/endian.h \
|
||||
/usr/include/bits/endian.h /usr/include/bits/byteswap.h \
|
||||
/usr/include/sys/types.h /usr/include/time.h /usr/include/sys/select.h \
|
||||
/usr/include/bits/select.h /usr/include/bits/sigset.h \
|
||||
/usr/include/bits/time.h /usr/include/sys/sysmacros.h \
|
||||
/usr/include/bits/pthreadtypes.h /usr/include/alloca.h \
|
||||
/usr/include/string.h /usr/include/xlocale.h ../include/users.h \
|
||||
../include/hashtable.h ../include/spinlock.h ../include/thread.h \
|
||||
/usr/include/pthread.h /usr/include/sched.h /usr/include/bits/sched.h \
|
||||
/usr/include/bits/setjmp.h ../include/atomic.h ../include/dcb.h \
|
||||
../include/buffer.h ../include/gwbitmask.h
|
||||
hashtable.o: hashtable.c /usr/include/stdio.h /usr/include/features.h \
|
||||
/usr/include/sys/cdefs.h /usr/include/bits/wordsize.h \
|
||||
/usr/include/gnu/stubs.h /usr/include/gnu/stubs-64.h \
|
||||
/usr/lib/gcc/x86_64-redhat-linux/4.4.7/include/stddef.h \
|
||||
/usr/include/bits/types.h /usr/include/bits/typesizes.h \
|
||||
/usr/include/libio.h /usr/include/_G_config.h /usr/include/wchar.h \
|
||||
/usr/lib/gcc/x86_64-redhat-linux/4.4.7/include/stdarg.h \
|
||||
/usr/include/bits/stdio_lim.h /usr/include/bits/sys_errlist.h \
|
||||
/usr/include/stdlib.h /usr/include/bits/waitflags.h \
|
||||
/usr/include/bits/waitstatus.h /usr/include/endian.h \
|
||||
/usr/include/bits/endian.h /usr/include/bits/byteswap.h \
|
||||
/usr/include/sys/types.h /usr/include/time.h /usr/include/sys/select.h \
|
||||
/usr/include/bits/select.h /usr/include/bits/sigset.h \
|
||||
/usr/include/bits/time.h /usr/include/sys/sysmacros.h \
|
||||
/usr/include/bits/pthreadtypes.h /usr/include/alloca.h \
|
||||
/usr/include/string.h /usr/include/xlocale.h ../include/hashtable.h \
|
||||
../include/spinlock.h ../include/thread.h /usr/include/pthread.h \
|
||||
/usr/include/sched.h /usr/include/bits/sched.h \
|
||||
/usr/include/bits/setjmp.h ../include/atomic.h ../include/dcb.h \
|
||||
../include/buffer.h ../include/gwbitmask.h
|
||||
dbusers.o: dbusers.c /usr/include/stdio.h /usr/include/features.h \
|
||||
/usr/include/sys/cdefs.h /usr/include/bits/wordsize.h \
|
||||
/usr/include/gnu/stubs.h /usr/include/gnu/stubs-64.h \
|
||||
/usr/lib/gcc/x86_64-redhat-linux/4.4.7/include/stddef.h \
|
||||
/usr/include/bits/types.h /usr/include/bits/typesizes.h \
|
||||
/usr/include/libio.h /usr/include/_G_config.h /usr/include/wchar.h \
|
||||
/usr/lib/gcc/x86_64-redhat-linux/4.4.7/include/stdarg.h \
|
||||
/usr/include/bits/stdio_lim.h /usr/include/bits/sys_errlist.h \
|
||||
/home/skysql/mariadb-5.5.32/include/mysql.h /usr/include/sys/types.h \
|
||||
/usr/include/time.h /usr/include/endian.h /usr/include/bits/endian.h \
|
||||
/usr/include/bits/byteswap.h /usr/include/sys/select.h \
|
||||
/usr/include/bits/select.h /usr/include/bits/sigset.h \
|
||||
/usr/include/bits/time.h /usr/include/sys/sysmacros.h \
|
||||
/usr/include/bits/pthreadtypes.h \
|
||||
/home/skysql/mariadb-5.5.32/include/mysql_version.h \
|
||||
/home/skysql/mariadb-5.5.32/include/mysql_com.h \
|
||||
/home/skysql/mariadb-5.5.32/include/mysql_time.h \
|
||||
/home/skysql/mariadb-5.5.32/include/my_list.h \
|
||||
/home/skysql/mariadb-5.5.32/include/typelib.h \
|
||||
/home/skysql/mariadb-5.5.32/include/my_alloc.h ../include/dcb.h \
|
||||
../include/spinlock.h ../include/thread.h /usr/include/pthread.h \
|
||||
/usr/include/sched.h /usr/include/bits/sched.h /usr/include/xlocale.h \
|
||||
/usr/include/bits/setjmp.h ../include/buffer.h ../include/gwbitmask.h \
|
||||
../include/service.h ../include/server.h ../include/users.h \
|
||||
../include/hashtable.h ../include/atomic.h \
|
||||
/home/skysql/workspace/utils/skygw_utils.h \
|
||||
/home/skysql/workspace/utils/skygw_types.h /usr/include/math.h \
|
||||
/usr/include/bits/huge_val.h /usr/include/bits/huge_valf.h \
|
||||
/usr/include/bits/huge_vall.h /usr/include/bits/inf.h \
|
||||
/usr/include/bits/nan.h /usr/include/bits/mathdef.h \
|
||||
/usr/include/bits/mathcalls.h /home/skysql/workspace/utils/skygw_debug.h \
|
||||
/usr/include/assert.h /usr/include/unistd.h \
|
||||
/usr/include/bits/posix_opt.h /usr/include/bits/environments.h \
|
||||
/usr/include/bits/confname.h /usr/include/getopt.h \
|
||||
/home/skysql/workspace/log_manager/log_manager.h ../include/secrets.h \
|
||||
/usr/include/string.h /usr/include/stdlib.h \
|
||||
/usr/include/bits/waitflags.h /usr/include/bits/waitstatus.h \
|
||||
/usr/include/alloca.h /usr/include/sys/stat.h /usr/include/bits/stat.h \
|
||||
/usr/include/fcntl.h /usr/include/bits/fcntl.h /usr/include/errno.h \
|
||||
/usr/include/bits/errno.h /usr/include/linux/errno.h \
|
||||
/usr/include/asm/errno.h /usr/include/asm-generic/errno.h \
|
||||
/usr/include/asm-generic/errno-base.h /usr/include/openssl/aes.h \
|
||||
/usr/include/openssl/opensslconf.h \
|
||||
/usr/include/openssl/opensslconf-x86_64.h
|
||||
thread.o: thread.c ../include/thread.h /usr/include/pthread.h \
|
||||
/usr/include/features.h /usr/include/sys/cdefs.h \
|
||||
/usr/include/bits/wordsize.h /usr/include/gnu/stubs.h \
|
||||
/usr/include/gnu/stubs-64.h /usr/include/endian.h \
|
||||
/usr/include/bits/endian.h /usr/include/bits/byteswap.h \
|
||||
/usr/include/sched.h /usr/include/bits/types.h \
|
||||
/usr/include/bits/typesizes.h \
|
||||
/usr/lib/gcc/x86_64-redhat-linux/4.4.7/include/stddef.h \
|
||||
/usr/include/time.h /usr/include/bits/sched.h /usr/include/bits/time.h \
|
||||
/usr/include/xlocale.h /usr/include/bits/pthreadtypes.h \
|
||||
/usr/include/bits/setjmp.h
|
||||
gwbitmask.o: gwbitmask.c /usr/include/stdlib.h /usr/include/features.h \
|
||||
/usr/include/sys/cdefs.h /usr/include/bits/wordsize.h \
|
||||
/usr/include/gnu/stubs.h /usr/include/gnu/stubs-64.h \
|
||||
/usr/lib/gcc/x86_64-redhat-linux/4.4.7/include/stddef.h \
|
||||
/usr/include/bits/waitflags.h /usr/include/bits/waitstatus.h \
|
||||
/usr/include/endian.h /usr/include/bits/endian.h \
|
||||
/usr/include/bits/byteswap.h /usr/include/sys/types.h \
|
||||
/usr/include/bits/types.h /usr/include/bits/typesizes.h \
|
||||
/usr/include/time.h /usr/include/sys/select.h /usr/include/bits/select.h \
|
||||
/usr/include/bits/sigset.h /usr/include/bits/time.h \
|
||||
/usr/include/sys/sysmacros.h /usr/include/bits/pthreadtypes.h \
|
||||
/usr/include/alloca.h /usr/include/string.h /usr/include/xlocale.h \
|
||||
../include/gwbitmask.h ../include/spinlock.h ../include/thread.h \
|
||||
/usr/include/pthread.h /usr/include/sched.h /usr/include/bits/sched.h \
|
||||
/usr/include/bits/setjmp.h
|
||||
monitor.o: monitor.c /usr/include/stdio.h /usr/include/features.h \
|
||||
/usr/include/sys/cdefs.h /usr/include/bits/wordsize.h \
|
||||
/usr/include/gnu/stubs.h /usr/include/gnu/stubs-64.h \
|
||||
/usr/lib/gcc/x86_64-redhat-linux/4.4.7/include/stddef.h \
|
||||
/usr/include/bits/types.h /usr/include/bits/typesizes.h \
|
||||
/usr/include/libio.h /usr/include/_G_config.h /usr/include/wchar.h \
|
||||
/usr/lib/gcc/x86_64-redhat-linux/4.4.7/include/stdarg.h \
|
||||
/usr/include/bits/stdio_lim.h /usr/include/bits/sys_errlist.h \
|
||||
/usr/include/stdlib.h /usr/include/bits/waitflags.h \
|
||||
/usr/include/bits/waitstatus.h /usr/include/endian.h \
|
||||
/usr/include/bits/endian.h /usr/include/bits/byteswap.h \
|
||||
/usr/include/sys/types.h /usr/include/time.h /usr/include/sys/select.h \
|
||||
/usr/include/bits/select.h /usr/include/bits/sigset.h \
|
||||
/usr/include/bits/time.h /usr/include/sys/sysmacros.h \
|
||||
/usr/include/bits/pthreadtypes.h /usr/include/alloca.h \
|
||||
/usr/include/string.h /usr/include/xlocale.h ../include/monitor.h \
|
||||
../include/server.h ../include/dcb.h ../include/spinlock.h \
|
||||
../include/thread.h /usr/include/pthread.h /usr/include/sched.h \
|
||||
/usr/include/bits/sched.h /usr/include/bits/setjmp.h ../include/buffer.h \
|
||||
../include/gwbitmask.h ../include/modules.h \
|
||||
/home/skysql/workspace/utils/skygw_utils.h \
|
||||
/home/skysql/workspace/utils/skygw_types.h /usr/include/math.h \
|
||||
/usr/include/bits/huge_val.h /usr/include/bits/huge_valf.h \
|
||||
/usr/include/bits/huge_vall.h /usr/include/bits/inf.h \
|
||||
/usr/include/bits/nan.h /usr/include/bits/mathdef.h \
|
||||
/usr/include/bits/mathcalls.h /home/skysql/workspace/utils/skygw_debug.h \
|
||||
/usr/include/assert.h /usr/include/unistd.h \
|
||||
/usr/include/bits/posix_opt.h /usr/include/bits/environments.h \
|
||||
/usr/include/bits/confname.h /usr/include/getopt.h \
|
||||
/home/skysql/workspace/log_manager/log_manager.h
|
||||
adminusers.o: adminusers.c /usr/include/stdio.h /usr/include/features.h \
|
||||
/usr/include/sys/cdefs.h /usr/include/bits/wordsize.h \
|
||||
/usr/include/gnu/stubs.h /usr/include/gnu/stubs-64.h \
|
||||
/usr/lib/gcc/x86_64-redhat-linux/4.4.7/include/stddef.h \
|
||||
/usr/include/bits/types.h /usr/include/bits/typesizes.h \
|
||||
/usr/include/libio.h /usr/include/_G_config.h /usr/include/wchar.h \
|
||||
/usr/lib/gcc/x86_64-redhat-linux/4.4.7/include/stdarg.h \
|
||||
/usr/include/bits/stdio_lim.h /usr/include/bits/sys_errlist.h \
|
||||
/usr/include/stdlib.h /usr/include/bits/waitflags.h \
|
||||
/usr/include/bits/waitstatus.h /usr/include/endian.h \
|
||||
/usr/include/bits/endian.h /usr/include/bits/byteswap.h \
|
||||
/usr/include/sys/types.h /usr/include/time.h /usr/include/sys/select.h \
|
||||
/usr/include/bits/select.h /usr/include/bits/sigset.h \
|
||||
/usr/include/bits/time.h /usr/include/sys/sysmacros.h \
|
||||
/usr/include/bits/pthreadtypes.h /usr/include/alloca.h \
|
||||
/usr/include/string.h /usr/include/xlocale.h /usr/include/unistd.h \
|
||||
/usr/include/bits/posix_opt.h /usr/include/bits/environments.h \
|
||||
/usr/include/bits/confname.h /usr/include/getopt.h /usr/include/crypt.h \
|
||||
../include/users.h ../include/hashtable.h ../include/spinlock.h \
|
||||
../include/thread.h /usr/include/pthread.h /usr/include/sched.h \
|
||||
/usr/include/bits/sched.h /usr/include/bits/setjmp.h ../include/atomic.h \
|
||||
../include/dcb.h ../include/buffer.h ../include/gwbitmask.h \
|
||||
../include/adminusers.h /home/skysql/workspace/utils/skygw_utils.h \
|
||||
/home/skysql/workspace/utils/skygw_types.h /usr/include/math.h \
|
||||
/usr/include/bits/huge_val.h /usr/include/bits/huge_valf.h \
|
||||
/usr/include/bits/huge_vall.h /usr/include/bits/inf.h \
|
||||
/usr/include/bits/nan.h /usr/include/bits/mathdef.h \
|
||||
/usr/include/bits/mathcalls.h /home/skysql/workspace/utils/skygw_debug.h \
|
||||
/usr/include/assert.h /home/skysql/workspace/log_manager/log_manager.h
|
||||
secrets.o: secrets.c ../include/secrets.h /usr/include/stdio.h \
|
||||
/usr/include/features.h /usr/include/sys/cdefs.h \
|
||||
/usr/include/bits/wordsize.h /usr/include/gnu/stubs.h \
|
||||
/usr/include/gnu/stubs-64.h \
|
||||
/usr/lib/gcc/x86_64-redhat-linux/4.4.7/include/stddef.h \
|
||||
/usr/include/bits/types.h /usr/include/bits/typesizes.h \
|
||||
/usr/include/libio.h /usr/include/_G_config.h /usr/include/wchar.h \
|
||||
/usr/lib/gcc/x86_64-redhat-linux/4.4.7/include/stdarg.h \
|
||||
/usr/include/bits/stdio_lim.h /usr/include/bits/sys_errlist.h \
|
||||
/usr/include/string.h /usr/include/xlocale.h /usr/include/stdlib.h \
|
||||
/usr/include/bits/waitflags.h /usr/include/bits/waitstatus.h \
|
||||
/usr/include/endian.h /usr/include/bits/endian.h \
|
||||
/usr/include/bits/byteswap.h /usr/include/sys/types.h \
|
||||
/usr/include/time.h /usr/include/sys/select.h /usr/include/bits/select.h \
|
||||
/usr/include/bits/sigset.h /usr/include/bits/time.h \
|
||||
/usr/include/sys/sysmacros.h /usr/include/bits/pthreadtypes.h \
|
||||
/usr/include/alloca.h /usr/include/sys/stat.h /usr/include/bits/stat.h \
|
||||
/usr/include/fcntl.h /usr/include/bits/fcntl.h /usr/include/errno.h \
|
||||
/usr/include/bits/errno.h /usr/include/linux/errno.h \
|
||||
/usr/include/asm/errno.h /usr/include/asm-generic/errno.h \
|
||||
/usr/include/asm-generic/errno-base.h /usr/include/openssl/aes.h \
|
||||
/usr/include/openssl/opensslconf.h \
|
||||
/usr/include/openssl/opensslconf-x86_64.h \
|
||||
/home/skysql/workspace/utils/skygw_utils.h \
|
||||
/home/skysql/workspace/utils/skygw_types.h /usr/include/math.h \
|
||||
/usr/include/bits/huge_val.h /usr/include/bits/huge_valf.h \
|
||||
/usr/include/bits/huge_vall.h /usr/include/bits/inf.h \
|
||||
/usr/include/bits/nan.h /usr/include/bits/mathdef.h \
|
||||
/usr/include/bits/mathcalls.h /home/skysql/workspace/utils/skygw_debug.h \
|
||||
/usr/include/assert.h /usr/include/pthread.h /usr/include/sched.h \
|
||||
/usr/include/bits/sched.h /usr/include/bits/setjmp.h \
|
||||
/usr/include/unistd.h /usr/include/bits/posix_opt.h \
|
||||
/usr/include/bits/environments.h /usr/include/bits/confname.h \
|
||||
/usr/include/getopt.h /home/skysql/workspace/log_manager/log_manager.h \
|
||||
/usr/include/ctype.h
|
@ -90,14 +90,14 @@ static char datadir[1024] = "";
|
||||
*/
|
||||
static void sighup_handler (int i)
|
||||
{
|
||||
skygw_log_write(NULL, LOGFILE_MESSAGE, "Refreshing configuration following SIGHUP\n");
|
||||
skygw_log_write( LOGFILE_MESSAGE, "Refreshing configuration following SIGHUP\n");
|
||||
config_reload();
|
||||
}
|
||||
|
||||
static void sigterm_handler (int i) {
|
||||
extern void shutdown_gateway();
|
||||
|
||||
skygw_log_write(NULL, LOGFILE_ERROR, "Signal SIGTERM %i received ...Exiting!\n", i);
|
||||
skygw_log_write( LOGFILE_ERROR, "Signal SIGTERM %i received ...Exiting!\n", i);
|
||||
shutdown_gateway();
|
||||
}
|
||||
|
||||
@ -110,7 +110,7 @@ static void signal_set (int sig, void (*handler)(int)) {
|
||||
sigact.sa_handler = handler;
|
||||
GW_NOINTR_CALL(err = sigaction(sig, &sigact, NULL));
|
||||
if (err < 0) {
|
||||
skygw_log_write(NULL, LOGFILE_ERROR,"sigaction() error %s\n", strerror(errno));
|
||||
skygw_log_write( LOGFILE_ERROR,"sigaction() error %s\n", strerror(errno));
|
||||
exit(1);
|
||||
}
|
||||
}
|
||||
@ -261,13 +261,13 @@ char ddopt[1024];
|
||||
|
||||
if (s==10) {
|
||||
skygw_log_write(
|
||||
NULL, LOGFILE_ERROR,
|
||||
LOGFILE_ERROR,
|
||||
"Fatal : missing file name. \n"
|
||||
"Unable to find a MaxScale configuration file, "
|
||||
"either install one in /etc/MaxScale.cnf, "
|
||||
"$MAXSCALE_HOME/etc/MaxScale.cnf "
|
||||
"or use the -c option with configuration file name. "
|
||||
"Exiting.\n");
|
||||
"or use the -c option with configuration file name."
|
||||
" Exiting.\n");
|
||||
}
|
||||
cnf_file = &argv[n][s];
|
||||
}
|
||||
@ -280,7 +280,7 @@ char ddopt[1024];
|
||||
if (daemon_mode == 1)
|
||||
{
|
||||
if (sigfillset(&sigset) != 0) {
|
||||
skygw_log_write(NULL,
|
||||
skygw_log_write(
|
||||
LOGFILE_ERROR,
|
||||
"sigfillset() error %s\n",
|
||||
strerror(errno));
|
||||
@ -288,21 +288,21 @@ char ddopt[1024];
|
||||
}
|
||||
|
||||
if (sigdelset(&sigset, SIGHUP) != 0) {
|
||||
skygw_log_write(NULL,
|
||||
skygw_log_write(
|
||||
LOGFILE_ERROR,
|
||||
"sigdelset(SIGHUP) error %s\n",
|
||||
strerror(errno));
|
||||
}
|
||||
|
||||
if (sigdelset(&sigset, SIGTERM) != 0) {
|
||||
skygw_log_write(NULL,
|
||||
skygw_log_write(
|
||||
LOGFILE_ERROR,
|
||||
"sigdelset(SIGTERM) error %s\n",
|
||||
strerror(errno));
|
||||
}
|
||||
|
||||
if (sigprocmask(SIG_SETMASK, &sigset, NULL) != 0) {
|
||||
skygw_log_write(NULL,
|
||||
skygw_log_write(
|
||||
LOGFILE_ERROR,
|
||||
"sigprocmask() error %s\n",
|
||||
strerror(errno));
|
||||
@ -366,12 +366,12 @@ char ddopt[1024];
|
||||
argv[1] = "-g";
|
||||
argv[2] = buf;
|
||||
argv[3] = NULL;
|
||||
skygw_logmanager_init(NULL, 3, argv);
|
||||
skygw_logmanager_init(3, argv);
|
||||
}
|
||||
|
||||
if (cnf_file == NULL) {
|
||||
skygw_log_write(
|
||||
NULL, LOGFILE_ERROR,
|
||||
skygw_log_write_flush(
|
||||
LOGFILE_ERROR,
|
||||
"Fatal : Unable to find a MaxScale configuration file, either "
|
||||
"install one in /etc/MaxScale.cnf, $MAXSCALE_HOME/etc/MaxScale.cnf "
|
||||
"or use the -c option. Exiting.\n");
|
||||
@ -391,12 +391,11 @@ char ddopt[1024];
|
||||
if (mysql_library_init(num_elements, server_options, server_groups))
|
||||
{
|
||||
skygw_log_write_flush(
|
||||
NULL,
|
||||
LOGFILE_ERROR,
|
||||
"Fatal : mysql_library_init failed, %s. This is mandatory "
|
||||
"component, required by router services and the MaxScale core, "
|
||||
"the MaxScale can't continue without it. Exiting.\n"
|
||||
"%s : %d\n",
|
||||
"%s : %d",
|
||||
mysql_error(NULL),
|
||||
__FILE__,
|
||||
__LINE__);
|
||||
@ -405,25 +404,28 @@ char ddopt[1024];
|
||||
|
||||
if (!config_load(cnf_file))
|
||||
{
|
||||
skygw_log_write(NULL,
|
||||
LOGFILE_ERROR,
|
||||
"Failed to load MaxScale configuration file %s\n", cnf_file);
|
||||
skygw_log_write_flush(
|
||||
LOGFILE_ERROR,
|
||||
"Failed to load MaxScale configuration file %s", cnf_file);
|
||||
exit(1);
|
||||
}
|
||||
|
||||
skygw_log_write(NULL, LOGFILE_MESSAGE, "SkySQL MaxScale (C) SkySQL Ab 2013\n");
|
||||
skygw_log_write_flush(NULL,
|
||||
LOGFILE_MESSAGE,
|
||||
"MaxScale is starting, PID %i\n",
|
||||
getpid());
|
||||
|
||||
skygw_log_write(
|
||||
LOGFILE_MESSAGE,
|
||||
"SkySQL MaxScale (C) SkySQL Ab 2013");
|
||||
skygw_log_write(
|
||||
LOGFILE_MESSAGE,
|
||||
"MaxScale is starting, PID %i",
|
||||
getpid());
|
||||
|
||||
poll_init();
|
||||
|
||||
|
||||
/*
|
||||
* Start the services that were created above
|
||||
*/
|
||||
n_services = serviceStartAll();
|
||||
skygw_log_write(NULL, LOGFILE_MESSAGE, "Started %i services\n", getpid());
|
||||
skygw_log_write_flush(LOGFILE_MESSAGE,
|
||||
"Start modules completed");
|
||||
|
||||
/*
|
||||
* Start the polling threads, note this is one less than is
|
||||
@ -440,7 +442,10 @@ char ddopt[1024];
|
||||
/* Stop all the monitors */
|
||||
monitorStopAll();
|
||||
|
||||
skygw_log_write(NULL, LOGFILE_MESSAGE, "MaxScale shutdown, PID %i\n", getpid());
|
||||
skygw_log_write(
|
||||
LOGFILE_MESSAGE,
|
||||
"MaxScale shutdown, PID %i\n",
|
||||
getpid());
|
||||
|
||||
return 0;
|
||||
} // End of main
|
||||
|
@ -227,8 +227,14 @@ HASHENTRIES *entry, *ptr;
|
||||
table->entries[hashkey % table->hashsize] = entry->next;
|
||||
table->freefn(entry->key);
|
||||
table->freefn(entry->value);
|
||||
entry->key = entry->next->key;
|
||||
entry->value = entry->next->value;
|
||||
|
||||
if (entry->next != NULL) {
|
||||
entry->key = entry->next->key;
|
||||
entry->value = entry->next->value;
|
||||
} else {
|
||||
entry->key = NULL;
|
||||
entry->value = NULL;
|
||||
}
|
||||
free(entry);
|
||||
}
|
||||
else
|
||||
|
@ -81,22 +81,25 @@ MODULES *mod;
|
||||
sprintf(fname, "%s/modules/lib%s.so", home, module);
|
||||
if (access(fname, F_OK) == -1)
|
||||
{
|
||||
skygw_log_write(NULL, LOGFILE_ERROR,
|
||||
skygw_log_write( LOGFILE_ERROR,
|
||||
"Unable to find library for module: %s\n", module);
|
||||
return NULL;
|
||||
}
|
||||
}
|
||||
if ((dlhandle = dlopen(fname, RTLD_NOW|RTLD_LOCAL)) == NULL)
|
||||
{
|
||||
skygw_log_write(NULL, LOGFILE_ERROR,
|
||||
skygw_log_write( LOGFILE_ERROR,
|
||||
"Unable to load library for module: %s, %s\n", module, dlerror());
|
||||
return NULL;
|
||||
}
|
||||
|
||||
if ((sym = dlsym(dlhandle, "version")) == NULL)
|
||||
{
|
||||
skygw_log_write(NULL, LOGFILE_ERROR,
|
||||
"Version interface not supported by module: %s, %s\n", module, dlerror());
|
||||
skygw_log_write_flush(
|
||||
LOGFILE_ERROR,
|
||||
"Version interface not supported by module: %s, %s\n",
|
||||
module,
|
||||
dlerror());
|
||||
dlclose(dlhandle);
|
||||
return NULL;
|
||||
}
|
||||
@ -114,15 +117,22 @@ MODULES *mod;
|
||||
|
||||
if ((sym = dlsym(dlhandle, "GetModuleObject")) == NULL)
|
||||
{
|
||||
skygw_log_write(NULL, LOGFILE_ERROR,
|
||||
"Expected entry point interface missing from module: %s, %s\n", module, dlerror());
|
||||
skygw_log_write_flush(
|
||||
LOGFILE_ERROR,
|
||||
"Expected entry point interface missing from module: "
|
||||
"%s, %s\n",
|
||||
module,
|
||||
dlerror());
|
||||
dlclose(dlhandle);
|
||||
return NULL;
|
||||
}
|
||||
ep = sym;
|
||||
modobj = ep();
|
||||
|
||||
skygw_log_write(NULL, LOGFILE_MESSAGE, "Loaded module %s: %s\n", module, version);
|
||||
skygw_log_write_flush(LOGFILE_MESSAGE,
|
||||
"Loaded module %s: %s\n",
|
||||
module,
|
||||
version);
|
||||
register_module(module, type, dlhandle, version, modobj);
|
||||
}
|
||||
else
|
||||
|
@ -61,7 +61,7 @@ MONITOR *mon;
|
||||
mon->name = strdup(name);
|
||||
if ((mon->module = load_module(module, MODULE_MONITOR)) == NULL)
|
||||
{
|
||||
skygw_log_write(NULL, LOGFILE_ERROR, "Unable to load monitor module '%s'\n", name);
|
||||
skygw_log_write( LOGFILE_ERROR, "Unable to load monitor module '%s'\n", name);
|
||||
free(mon->name);
|
||||
free(mon);
|
||||
return NULL;
|
||||
|
@ -70,31 +70,31 @@ int fd;
|
||||
/* open secret file */
|
||||
if ((fd = open(secret_file, O_RDONLY)) < 0)
|
||||
{
|
||||
skygw_log_write(NULL, LOGFILE_ERROR, "secrets_readKeys, failed opening secret file [%s]. Error %i, %s\n", secret_file, errno, strerror(errno));
|
||||
skygw_log_write( LOGFILE_ERROR, "secrets_readKeys, failed opening secret file [%s]. Error %i, %s\n", secret_file, errno, strerror(errno));
|
||||
return NULL;
|
||||
|
||||
}
|
||||
|
||||
/* accessing file details */
|
||||
if (fstat(fd, &secret_stats) < 0) {
|
||||
skygw_log_write(NULL, LOGFILE_ERROR, "secrets_readKeys, failed accessing secret file details [%s]. Error %i, %s\n", secret_file, errno, strerror(errno));
|
||||
skygw_log_write( LOGFILE_ERROR, "secrets_readKeys, failed accessing secret file details [%s]. Error %i, %s\n", secret_file, errno, strerror(errno));
|
||||
return NULL;
|
||||
}
|
||||
|
||||
if (secret_stats.st_size != sizeof(MAXKEYS))
|
||||
{
|
||||
skygw_log_write(NULL, LOGFILE_ERROR, "Secrets file %s is incorrect size\n", secret_file);
|
||||
skygw_log_write( LOGFILE_ERROR, "Secrets file %s is incorrect size\n", secret_file);
|
||||
return NULL;
|
||||
}
|
||||
if (secret_stats.st_mode != (S_IRUSR|S_IFREG))
|
||||
{
|
||||
skygw_log_write(NULL, LOGFILE_ERROR, "Ignoring secrets file, permissions must be read only fo rthe owner\n");
|
||||
skygw_log_write( LOGFILE_ERROR, "Ignoring secrets file, permissions must be read only fo rthe owner\n");
|
||||
return NULL;
|
||||
}
|
||||
|
||||
if ((keys = (MAXKEYS *)malloc(sizeof(MAXKEYS))) == NULL)
|
||||
{
|
||||
skygw_log_write(NULL, LOGFILE_ERROR,
|
||||
skygw_log_write( LOGFILE_ERROR,
|
||||
"Insufficient memory to create the keys structure.\n");
|
||||
return NULL;
|
||||
}
|
||||
@ -102,13 +102,13 @@ int fd;
|
||||
/* read all data from file */
|
||||
if (read(fd, keys, sizeof(MAXKEYS)) != sizeof(MAXKEYS))
|
||||
{
|
||||
skygw_log_write(NULL, LOGFILE_ERROR, "secrets_readKeys, failed reading from secret file [%s]. Error %i, %s\n", secret_file, errno, strerror(errno));
|
||||
skygw_log_write( LOGFILE_ERROR, "secrets_readKeys, failed reading from secret file [%s]. Error %i, %s\n", secret_file, errno, strerror(errno));
|
||||
return NULL;
|
||||
}
|
||||
|
||||
/* Close the file */
|
||||
if (close(fd) < 0) {
|
||||
skygw_log_write(NULL, LOGFILE_ERROR, "secrets_readKeys, failed closing the secret file [%s]. Error %i, %s\n", secret_file, errno, strerror(errno));
|
||||
skygw_log_write( LOGFILE_ERROR, "secrets_readKeys, failed closing the secret file [%s]. Error %i, %s\n", secret_file, errno, strerror(errno));
|
||||
return NULL;
|
||||
}
|
||||
|
||||
@ -132,7 +132,7 @@ MAXKEYS key;
|
||||
/* Open for writing | Create | Truncate the file for writing */
|
||||
if ((fd = open(secret_file, O_CREAT | O_WRONLY | O_TRUNC), S_IRUSR) < 0)
|
||||
{
|
||||
skygw_log_write(NULL, LOGFILE_ERROR, "secrets_createKeys, failed opening secret file [%s]. Error %i, %s\n", secret_file, errno, strerror(errno));
|
||||
skygw_log_write( LOGFILE_ERROR, "secrets_createKeys, failed opening secret file [%s]. Error %i, %s\n", secret_file, errno, strerror(errno));
|
||||
return 1;
|
||||
}
|
||||
|
||||
@ -143,14 +143,14 @@ MAXKEYS key;
|
||||
/* Write data */
|
||||
if (write(fd, &key, sizeof(key)) < 0)
|
||||
{
|
||||
skygw_log_write(NULL, LOGFILE_ERROR, "secrets_createKeys, failed writing into secret file [%s]. Error %i, %s\n", secret_file, errno, strerror(errno));
|
||||
skygw_log_write( LOGFILE_ERROR, "secrets_createKeys, failed writing into secret file [%s]. Error %i, %s\n", secret_file, errno, strerror(errno));
|
||||
return 1;
|
||||
}
|
||||
|
||||
/* close file */
|
||||
if (close(fd) < 0)
|
||||
{
|
||||
skygw_log_write(NULL, LOGFILE_ERROR, "secrets_createKeys, failed closing the secret file [%s]. Error %i, %s\n", secret_file, errno, strerror(errno));
|
||||
skygw_log_write( LOGFILE_ERROR, "secrets_createKeys, failed closing the secret file [%s]. Error %i, %s\n", secret_file, errno, strerror(errno));
|
||||
}
|
||||
|
||||
chmod(secret_file, S_IRUSR);
|
||||
|
@ -302,19 +302,27 @@ server_update(SERVER *server, char *protocol, char *user, char *passwd)
|
||||
{
|
||||
if (!strcmp(server->protocol, protocol))
|
||||
{
|
||||
skygw_log_write(NULL, LOGFILE_MESSAGE, "Update server protocol for server %s to protocol %s",
|
||||
server->name, protocol);
|
||||
skygw_log_write(
|
||||
LOGFILE_MESSAGE,
|
||||
"Update server protocol for server %s to protocol %s",
|
||||
server->name,
|
||||
protocol);
|
||||
free(server->protocol);
|
||||
server->protocol = strdup(protocol);
|
||||
}
|
||||
|
||||
if (strcmp(server->monuser, user) == 0 || strcmp(server->monpw, passwd) == 0)
|
||||
{
|
||||
skygw_log_write(NULL, LOGFILE_MESSAGE, "Update server monitor credentials for server %s",
|
||||
if (user != NULL && passwd != NULL) {
|
||||
if (strcmp(server->monuser, user) == 0 ||
|
||||
strcmp(server->monpw, passwd) == 0)
|
||||
{
|
||||
skygw_log_write(
|
||||
LOGFILE_MESSAGE,
|
||||
"Update server monitor credentials for server %s",
|
||||
server->name);
|
||||
free(server->monuser);
|
||||
free(server->monpw);
|
||||
serverAddMonUser(server, user, passwd);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -112,7 +112,7 @@ GWPROTOCOL *funcs;
|
||||
|
||||
loaded = load_mysql_users(service);
|
||||
|
||||
skygw_log_write(NULL, LOGFILE_MESSAGE, "MySQL Users loaded: %i\n", loaded);
|
||||
skygw_log_write( LOGFILE_MESSAGE, "MySQL Users loaded: %i\n", loaded);
|
||||
}
|
||||
|
||||
if ((funcs = (GWPROTOCOL *)load_module(port->protocol, MODULE_PROTOCOL)) == NULL)
|
||||
@ -605,12 +605,12 @@ void *router_obj;
|
||||
{
|
||||
if ((router_obj = load_module(router, MODULE_ROUTER)) == NULL)
|
||||
{
|
||||
skygw_log_write(NULL, LOGFILE_ERROR, "Failed to update router for service %s to %s",
|
||||
skygw_log_write( LOGFILE_ERROR, "Failed to update router for service %s to %s",
|
||||
service->name, router);
|
||||
}
|
||||
else
|
||||
{
|
||||
skygw_log_write(NULL, LOGFILE_MESSAGE, "Update router for service %s to %s",
|
||||
skygw_log_write( LOGFILE_MESSAGE, "Update router for service %s to %s",
|
||||
service->name, router);
|
||||
free(service->routerModule);
|
||||
service->routerModule = strdup(router);
|
||||
@ -619,7 +619,7 @@ void *router_obj;
|
||||
}
|
||||
if (user && (strcmp(service->credentials.name, user) != 0 || strcmp(service->credentials.authdata, auth) != 0))
|
||||
{
|
||||
skygw_log_write(NULL, LOGFILE_MESSAGE, "Update credentials for service %s", service->name);
|
||||
skygw_log_write( LOGFILE_MESSAGE, "Update credentials for service %s", service->name);
|
||||
serviceSetUser(service, user, auth);
|
||||
}
|
||||
}
|
||||
|
@ -113,6 +113,10 @@ users_delete(USERS *users, char *user)
|
||||
int del;
|
||||
|
||||
atomic_add(&users->stats.n_deletes, 1);
|
||||
if (users->stats.n_entries == 1) {
|
||||
atomic_add(&users->stats.n_entries, del * -1);
|
||||
return 0;
|
||||
}
|
||||
del = hashtable_delete(users->data, user);
|
||||
atomic_add(&users->stats.n_entries, del * -1);
|
||||
return del;
|
||||
|
@ -62,12 +62,12 @@ int setnonblocking(int fd) {
|
||||
int fl;
|
||||
|
||||
if ((fl = fcntl(fd, F_GETFL, 0)) == -1) {
|
||||
skygw_log_write(NULL, LOGFILE_ERROR, "Can't GET fcntl for %i, errno = %d, %s", fd, errno, strerror(errno));
|
||||
skygw_log_write( LOGFILE_ERROR, "Can't GET fcntl for %i, errno = %d, %s", fd, errno, strerror(errno));
|
||||
return 1;
|
||||
}
|
||||
|
||||
if (fcntl(fd, F_SETFL, fl | O_NONBLOCK) == -1) {
|
||||
skygw_log_write(NULL, LOGFILE_ERROR, "Can't SET fcntl for %i, errno = %d, %s", fd, errno, strerror(errno));
|
||||
skygw_log_write( LOGFILE_ERROR, "Can't SET fcntl for %i, errno = %d, %s", fd, errno, strerror(errno));
|
||||
return 1;
|
||||
}
|
||||
|
||||
|
@ -33,8 +33,10 @@
|
||||
|
||||
extern int admin_verify(char *, char *);
|
||||
extern char *admin_add_user(char *, char *);
|
||||
extern int admin_test_user(char *);
|
||||
extern int admin_search_user(char *);
|
||||
extern void dcb_PrintAdminUsers(DCB *dcb);
|
||||
|
||||
char* admin_remove_user(char* uname, char* passwd);
|
||||
|
||||
|
||||
#endif
|
||||
|
@ -1,44 +0,0 @@
|
||||
mysql_mon.o: mysql_mon.c /usr/include/stdio.h /usr/include/features.h \
|
||||
/usr/include/sys/cdefs.h /usr/include/bits/wordsize.h \
|
||||
/usr/include/gnu/stubs.h /usr/include/gnu/stubs-64.h \
|
||||
/usr/lib/gcc/x86_64-redhat-linux/4.4.7/include/stddef.h \
|
||||
/usr/include/bits/types.h /usr/include/bits/typesizes.h \
|
||||
/usr/include/libio.h /usr/include/_G_config.h /usr/include/wchar.h \
|
||||
/usr/lib/gcc/x86_64-redhat-linux/4.4.7/include/stdarg.h \
|
||||
/usr/include/bits/stdio_lim.h /usr/include/bits/sys_errlist.h \
|
||||
/usr/include/stdlib.h /usr/include/bits/waitflags.h \
|
||||
/usr/include/bits/waitstatus.h /usr/include/endian.h \
|
||||
/usr/include/bits/endian.h /usr/include/bits/byteswap.h \
|
||||
/usr/include/sys/types.h /usr/include/time.h /usr/include/sys/select.h \
|
||||
/usr/include/bits/select.h /usr/include/bits/sigset.h \
|
||||
/usr/include/bits/time.h /usr/include/sys/sysmacros.h \
|
||||
/usr/include/bits/pthreadtypes.h /usr/include/alloca.h \
|
||||
/usr/include/string.h /usr/include/xlocale.h ../../include/monitor.h \
|
||||
../../include/server.h ../../include/dcb.h ../../include/spinlock.h \
|
||||
../../include/thread.h /usr/include/pthread.h /usr/include/sched.h \
|
||||
/usr/include/bits/sched.h /usr/include/bits/setjmp.h \
|
||||
../../include/buffer.h ../../include/gwbitmask.h mysqlmon.h \
|
||||
/home/skysql/mariadb-5.5.32/include/mysql.h \
|
||||
/home/skysql/mariadb-5.5.32/include/mysql_version.h \
|
||||
/home/skysql/mariadb-5.5.32/include/mysql_com.h \
|
||||
/home/skysql/mariadb-5.5.32/include/mysql_time.h \
|
||||
/home/skysql/mariadb-5.5.32/include/my_list.h \
|
||||
/home/skysql/mariadb-5.5.32/include/typelib.h \
|
||||
/home/skysql/mariadb-5.5.32/include/my_alloc.h \
|
||||
/home/skysql/mariadb-5.5.32/include/mysqld_error.h \
|
||||
/home/skysql/workspace/utils/skygw_utils.h \
|
||||
/home/skysql/workspace/utils/skygw_types.h /usr/include/math.h \
|
||||
/usr/include/bits/huge_val.h /usr/include/bits/huge_valf.h \
|
||||
/usr/include/bits/huge_vall.h /usr/include/bits/inf.h \
|
||||
/usr/include/bits/nan.h /usr/include/bits/mathdef.h \
|
||||
/usr/include/bits/mathcalls.h /home/skysql/workspace/utils/skygw_debug.h \
|
||||
/usr/include/assert.h /usr/include/unistd.h \
|
||||
/usr/include/bits/posix_opt.h /usr/include/bits/environments.h \
|
||||
/usr/include/bits/confname.h /usr/include/getopt.h \
|
||||
/home/skysql/workspace/log_manager/log_manager.h ../../include/secrets.h \
|
||||
/usr/include/sys/stat.h /usr/include/bits/stat.h /usr/include/fcntl.h \
|
||||
/usr/include/bits/fcntl.h /usr/include/errno.h /usr/include/bits/errno.h \
|
||||
/usr/include/linux/errno.h /usr/include/asm/errno.h \
|
||||
/usr/include/asm-generic/errno.h /usr/include/asm-generic/errno-base.h \
|
||||
/usr/include/openssl/aes.h /usr/include/openssl/opensslconf.h \
|
||||
/usr/include/openssl/opensslconf-x86_64.h
|
@ -72,7 +72,7 @@ version()
|
||||
void
|
||||
ModuleInit()
|
||||
{
|
||||
skygw_log_write(NULL, LOGFILE_MESSAGE, "Initialise the MySQL Galera Monitor module %s.\n",
|
||||
skygw_log_write( LOGFILE_MESSAGE, "Initialise the MySQL Galera Monitor module %s.\n",
|
||||
version_str);
|
||||
}
|
||||
|
||||
@ -334,8 +334,7 @@ MONITOR_SERVERS *ptr;
|
||||
|
||||
if (mysql_thread_init())
|
||||
{
|
||||
skygw_log_write_flush(NULL,
|
||||
LOGFILE_ERROR,
|
||||
skygw_log_write_flush(LOGFILE_ERROR,
|
||||
"Fatal : mysql_init_thread failed in monitor "
|
||||
"module. Exiting.\n");
|
||||
return;
|
||||
|
@ -76,7 +76,7 @@ version()
|
||||
void
|
||||
ModuleInit()
|
||||
{
|
||||
skygw_log_write(NULL, LOGFILE_MESSAGE, "Initialise the MySQL Monitor module %s.\n",
|
||||
skygw_log_write( LOGFILE_MESSAGE, "Initialise the MySQL Monitor module %s.\n",
|
||||
version_str);
|
||||
}
|
||||
|
||||
@ -372,8 +372,7 @@ MONITOR_SERVERS *ptr;
|
||||
|
||||
if (mysql_thread_init())
|
||||
{
|
||||
skygw_log_write_flush(NULL,
|
||||
LOGFILE_ERROR,
|
||||
skygw_log_write_flush(LOGFILE_ERROR,
|
||||
"Fatal : mysql_init_thread failed in monitor "
|
||||
"module. Exiting.\n");
|
||||
return;
|
||||
|
@ -1,274 +0,0 @@
|
||||
mysql_client.o: mysql_client.c ../include/mysql_client_server_protocol.h \
|
||||
/usr/include/stdio.h /usr/include/features.h /usr/include/sys/cdefs.h \
|
||||
/usr/include/bits/wordsize.h /usr/include/gnu/stubs.h \
|
||||
/usr/include/gnu/stubs-64.h \
|
||||
/usr/lib/gcc/x86_64-redhat-linux/4.4.7/include/stddef.h \
|
||||
/usr/include/bits/types.h /usr/include/bits/typesizes.h \
|
||||
/usr/include/libio.h /usr/include/_G_config.h /usr/include/wchar.h \
|
||||
/usr/lib/gcc/x86_64-redhat-linux/4.4.7/include/stdarg.h \
|
||||
/usr/include/bits/stdio_lim.h /usr/include/bits/sys_errlist.h \
|
||||
/usr/include/stdlib.h /usr/include/bits/waitflags.h \
|
||||
/usr/include/bits/waitstatus.h /usr/include/endian.h \
|
||||
/usr/include/bits/endian.h /usr/include/bits/byteswap.h \
|
||||
/usr/include/sys/types.h /usr/include/time.h /usr/include/sys/select.h \
|
||||
/usr/include/bits/select.h /usr/include/bits/sigset.h \
|
||||
/usr/include/bits/time.h /usr/include/sys/sysmacros.h \
|
||||
/usr/include/bits/pthreadtypes.h /usr/include/alloca.h \
|
||||
/usr/include/stdint.h /usr/include/bits/wchar.h /usr/include/string.h \
|
||||
/usr/include/xlocale.h /usr/include/openssl/sha.h \
|
||||
/usr/include/openssl/e_os2.h /usr/include/openssl/opensslconf.h \
|
||||
/usr/include/openssl/opensslconf-x86_64.h /usr/include/sys/ioctl.h \
|
||||
/usr/include/bits/ioctls.h /usr/include/asm/ioctls.h \
|
||||
/usr/include/asm-generic/ioctls.h /usr/include/linux/ioctl.h \
|
||||
/usr/include/asm/ioctl.h /usr/include/asm-generic/ioctl.h \
|
||||
/usr/include/bits/ioctl-types.h /usr/include/sys/ttydefaults.h \
|
||||
/usr/include/errno.h /usr/include/bits/errno.h \
|
||||
/usr/include/linux/errno.h /usr/include/asm/errno.h \
|
||||
/usr/include/asm-generic/errno.h /usr/include/asm-generic/errno-base.h \
|
||||
/usr/include/sys/socket.h /usr/include/sys/uio.h /usr/include/bits/uio.h \
|
||||
/usr/include/bits/socket.h /usr/include/bits/sockaddr.h \
|
||||
/usr/include/asm/socket.h /usr/include/asm-generic/socket.h \
|
||||
/usr/include/asm/sockios.h /usr/include/asm-generic/sockios.h \
|
||||
/usr/include/netinet/in.h /usr/include/bits/in.h \
|
||||
/usr/include/arpa/inet.h \
|
||||
/usr/lib/gcc/x86_64-redhat-linux/4.4.7/include/stdbool.h \
|
||||
/usr/include/fcntl.h /usr/include/bits/fcntl.h /usr/include/bits/stat.h \
|
||||
/usr/include/unistd.h /usr/include/bits/posix_opt.h \
|
||||
/usr/include/bits/environments.h /usr/include/bits/confname.h \
|
||||
/usr/include/getopt.h ../../include/service.h ../../include/spinlock.h \
|
||||
../../include/thread.h /usr/include/pthread.h /usr/include/sched.h \
|
||||
/usr/include/bits/sched.h /usr/include/bits/setjmp.h ../../include/dcb.h \
|
||||
../../include/buffer.h ../../include/gwbitmask.h ../../include/server.h \
|
||||
../../include/router.h ../../include/session.h ../../include/poll.h \
|
||||
../../include/users.h ../../include/hashtable.h ../../include/atomic.h
|
||||
mysql_common.o: mysql_common.c ../include/mysql_client_server_protocol.h \
|
||||
/usr/include/stdio.h /usr/include/features.h /usr/include/sys/cdefs.h \
|
||||
/usr/include/bits/wordsize.h /usr/include/gnu/stubs.h \
|
||||
/usr/include/gnu/stubs-64.h \
|
||||
/usr/lib/gcc/x86_64-redhat-linux/4.4.7/include/stddef.h \
|
||||
/usr/include/bits/types.h /usr/include/bits/typesizes.h \
|
||||
/usr/include/libio.h /usr/include/_G_config.h /usr/include/wchar.h \
|
||||
/usr/lib/gcc/x86_64-redhat-linux/4.4.7/include/stdarg.h \
|
||||
/usr/include/bits/stdio_lim.h /usr/include/bits/sys_errlist.h \
|
||||
/usr/include/stdlib.h /usr/include/bits/waitflags.h \
|
||||
/usr/include/bits/waitstatus.h /usr/include/endian.h \
|
||||
/usr/include/bits/endian.h /usr/include/bits/byteswap.h \
|
||||
/usr/include/sys/types.h /usr/include/time.h /usr/include/sys/select.h \
|
||||
/usr/include/bits/select.h /usr/include/bits/sigset.h \
|
||||
/usr/include/bits/time.h /usr/include/sys/sysmacros.h \
|
||||
/usr/include/bits/pthreadtypes.h /usr/include/alloca.h \
|
||||
/usr/include/stdint.h /usr/include/bits/wchar.h /usr/include/string.h \
|
||||
/usr/include/xlocale.h /usr/include/openssl/sha.h \
|
||||
/usr/include/openssl/e_os2.h /usr/include/openssl/opensslconf.h \
|
||||
/usr/include/openssl/opensslconf-x86_64.h /usr/include/sys/ioctl.h \
|
||||
/usr/include/bits/ioctls.h /usr/include/asm/ioctls.h \
|
||||
/usr/include/asm-generic/ioctls.h /usr/include/linux/ioctl.h \
|
||||
/usr/include/asm/ioctl.h /usr/include/asm-generic/ioctl.h \
|
||||
/usr/include/bits/ioctl-types.h /usr/include/sys/ttydefaults.h \
|
||||
/usr/include/errno.h /usr/include/bits/errno.h \
|
||||
/usr/include/linux/errno.h /usr/include/asm/errno.h \
|
||||
/usr/include/asm-generic/errno.h /usr/include/asm-generic/errno-base.h \
|
||||
/usr/include/sys/socket.h /usr/include/sys/uio.h /usr/include/bits/uio.h \
|
||||
/usr/include/bits/socket.h /usr/include/bits/sockaddr.h \
|
||||
/usr/include/asm/socket.h /usr/include/asm-generic/socket.h \
|
||||
/usr/include/asm/sockios.h /usr/include/asm-generic/sockios.h \
|
||||
/usr/include/netinet/in.h /usr/include/bits/in.h \
|
||||
/usr/include/arpa/inet.h \
|
||||
/usr/lib/gcc/x86_64-redhat-linux/4.4.7/include/stdbool.h \
|
||||
/usr/include/fcntl.h /usr/include/bits/fcntl.h /usr/include/bits/stat.h \
|
||||
/usr/include/unistd.h /usr/include/bits/posix_opt.h \
|
||||
/usr/include/bits/environments.h /usr/include/bits/confname.h \
|
||||
/usr/include/getopt.h ../../include/service.h ../../include/spinlock.h \
|
||||
../../include/thread.h /usr/include/pthread.h /usr/include/sched.h \
|
||||
/usr/include/bits/sched.h /usr/include/bits/setjmp.h ../../include/dcb.h \
|
||||
../../include/buffer.h ../../include/gwbitmask.h ../../include/server.h \
|
||||
../../include/router.h ../../include/session.h ../../include/poll.h \
|
||||
../../include/users.h ../../include/hashtable.h ../../include/atomic.h
|
||||
mysql_backend.o: mysql_backend.c \
|
||||
../include/mysql_client_server_protocol.h /usr/include/stdio.h \
|
||||
/usr/include/features.h /usr/include/sys/cdefs.h \
|
||||
/usr/include/bits/wordsize.h /usr/include/gnu/stubs.h \
|
||||
/usr/include/gnu/stubs-64.h \
|
||||
/usr/lib/gcc/x86_64-redhat-linux/4.4.7/include/stddef.h \
|
||||
/usr/include/bits/types.h /usr/include/bits/typesizes.h \
|
||||
/usr/include/libio.h /usr/include/_G_config.h /usr/include/wchar.h \
|
||||
/usr/lib/gcc/x86_64-redhat-linux/4.4.7/include/stdarg.h \
|
||||
/usr/include/bits/stdio_lim.h /usr/include/bits/sys_errlist.h \
|
||||
/usr/include/stdlib.h /usr/include/bits/waitflags.h \
|
||||
/usr/include/bits/waitstatus.h /usr/include/endian.h \
|
||||
/usr/include/bits/endian.h /usr/include/bits/byteswap.h \
|
||||
/usr/include/sys/types.h /usr/include/time.h /usr/include/sys/select.h \
|
||||
/usr/include/bits/select.h /usr/include/bits/sigset.h \
|
||||
/usr/include/bits/time.h /usr/include/sys/sysmacros.h \
|
||||
/usr/include/bits/pthreadtypes.h /usr/include/alloca.h \
|
||||
/usr/include/stdint.h /usr/include/bits/wchar.h /usr/include/string.h \
|
||||
/usr/include/xlocale.h /usr/include/openssl/sha.h \
|
||||
/usr/include/openssl/e_os2.h /usr/include/openssl/opensslconf.h \
|
||||
/usr/include/openssl/opensslconf-x86_64.h /usr/include/sys/ioctl.h \
|
||||
/usr/include/bits/ioctls.h /usr/include/asm/ioctls.h \
|
||||
/usr/include/asm-generic/ioctls.h /usr/include/linux/ioctl.h \
|
||||
/usr/include/asm/ioctl.h /usr/include/asm-generic/ioctl.h \
|
||||
/usr/include/bits/ioctl-types.h /usr/include/sys/ttydefaults.h \
|
||||
/usr/include/errno.h /usr/include/bits/errno.h \
|
||||
/usr/include/linux/errno.h /usr/include/asm/errno.h \
|
||||
/usr/include/asm-generic/errno.h /usr/include/asm-generic/errno-base.h \
|
||||
/usr/include/sys/socket.h /usr/include/sys/uio.h /usr/include/bits/uio.h \
|
||||
/usr/include/bits/socket.h /usr/include/bits/sockaddr.h \
|
||||
/usr/include/asm/socket.h /usr/include/asm-generic/socket.h \
|
||||
/usr/include/asm/sockios.h /usr/include/asm-generic/sockios.h \
|
||||
/usr/include/netinet/in.h /usr/include/bits/in.h \
|
||||
/usr/include/arpa/inet.h \
|
||||
/usr/lib/gcc/x86_64-redhat-linux/4.4.7/include/stdbool.h \
|
||||
/usr/include/fcntl.h /usr/include/bits/fcntl.h /usr/include/bits/stat.h \
|
||||
/usr/include/unistd.h /usr/include/bits/posix_opt.h \
|
||||
/usr/include/bits/environments.h /usr/include/bits/confname.h \
|
||||
/usr/include/getopt.h ../../include/service.h ../../include/spinlock.h \
|
||||
../../include/thread.h /usr/include/pthread.h /usr/include/sched.h \
|
||||
/usr/include/bits/sched.h /usr/include/bits/setjmp.h ../../include/dcb.h \
|
||||
../../include/buffer.h ../../include/gwbitmask.h ../../include/server.h \
|
||||
../../include/router.h ../../include/session.h ../../include/poll.h \
|
||||
../../include/users.h ../../include/hashtable.h ../../include/atomic.h
|
||||
mysql_common.o: mysql_common.c ../include/mysql_client_server_protocol.h \
|
||||
/usr/include/stdio.h /usr/include/features.h /usr/include/sys/cdefs.h \
|
||||
/usr/include/bits/wordsize.h /usr/include/gnu/stubs.h \
|
||||
/usr/include/gnu/stubs-64.h \
|
||||
/usr/lib/gcc/x86_64-redhat-linux/4.4.7/include/stddef.h \
|
||||
/usr/include/bits/types.h /usr/include/bits/typesizes.h \
|
||||
/usr/include/libio.h /usr/include/_G_config.h /usr/include/wchar.h \
|
||||
/usr/lib/gcc/x86_64-redhat-linux/4.4.7/include/stdarg.h \
|
||||
/usr/include/bits/stdio_lim.h /usr/include/bits/sys_errlist.h \
|
||||
/usr/include/stdlib.h /usr/include/bits/waitflags.h \
|
||||
/usr/include/bits/waitstatus.h /usr/include/endian.h \
|
||||
/usr/include/bits/endian.h /usr/include/bits/byteswap.h \
|
||||
/usr/include/sys/types.h /usr/include/time.h /usr/include/sys/select.h \
|
||||
/usr/include/bits/select.h /usr/include/bits/sigset.h \
|
||||
/usr/include/bits/time.h /usr/include/sys/sysmacros.h \
|
||||
/usr/include/bits/pthreadtypes.h /usr/include/alloca.h \
|
||||
/usr/include/stdint.h /usr/include/bits/wchar.h /usr/include/string.h \
|
||||
/usr/include/xlocale.h /usr/include/openssl/sha.h \
|
||||
/usr/include/openssl/e_os2.h /usr/include/openssl/opensslconf.h \
|
||||
/usr/include/openssl/opensslconf-x86_64.h /usr/include/sys/ioctl.h \
|
||||
/usr/include/bits/ioctls.h /usr/include/asm/ioctls.h \
|
||||
/usr/include/asm-generic/ioctls.h /usr/include/linux/ioctl.h \
|
||||
/usr/include/asm/ioctl.h /usr/include/asm-generic/ioctl.h \
|
||||
/usr/include/bits/ioctl-types.h /usr/include/sys/ttydefaults.h \
|
||||
/usr/include/errno.h /usr/include/bits/errno.h \
|
||||
/usr/include/linux/errno.h /usr/include/asm/errno.h \
|
||||
/usr/include/asm-generic/errno.h /usr/include/asm-generic/errno-base.h \
|
||||
/usr/include/sys/socket.h /usr/include/sys/uio.h /usr/include/bits/uio.h \
|
||||
/usr/include/bits/socket.h /usr/include/bits/sockaddr.h \
|
||||
/usr/include/asm/socket.h /usr/include/asm-generic/socket.h \
|
||||
/usr/include/asm/sockios.h /usr/include/asm-generic/sockios.h \
|
||||
/usr/include/netinet/in.h /usr/include/bits/in.h \
|
||||
/usr/include/arpa/inet.h \
|
||||
/usr/lib/gcc/x86_64-redhat-linux/4.4.7/include/stdbool.h \
|
||||
/usr/include/fcntl.h /usr/include/bits/fcntl.h /usr/include/bits/stat.h \
|
||||
/usr/include/unistd.h /usr/include/bits/posix_opt.h \
|
||||
/usr/include/bits/environments.h /usr/include/bits/confname.h \
|
||||
/usr/include/getopt.h ../../include/service.h ../../include/spinlock.h \
|
||||
../../include/thread.h /usr/include/pthread.h /usr/include/sched.h \
|
||||
/usr/include/bits/sched.h /usr/include/bits/setjmp.h ../../include/dcb.h \
|
||||
../../include/buffer.h ../../include/gwbitmask.h ../../include/server.h \
|
||||
../../include/router.h ../../include/session.h ../../include/poll.h \
|
||||
../../include/users.h ../../include/hashtable.h ../../include/atomic.h
|
||||
telnetd.o: telnetd.c /usr/include/stdio.h /usr/include/features.h \
|
||||
/usr/include/sys/cdefs.h /usr/include/bits/wordsize.h \
|
||||
/usr/include/gnu/stubs.h /usr/include/gnu/stubs-64.h \
|
||||
/usr/lib/gcc/x86_64-redhat-linux/4.4.7/include/stddef.h \
|
||||
/usr/include/bits/types.h /usr/include/bits/typesizes.h \
|
||||
/usr/include/libio.h /usr/include/_G_config.h /usr/include/wchar.h \
|
||||
/usr/lib/gcc/x86_64-redhat-linux/4.4.7/include/stdarg.h \
|
||||
/usr/include/bits/stdio_lim.h /usr/include/bits/sys_errlist.h \
|
||||
/usr/include/stdlib.h /usr/include/bits/waitflags.h \
|
||||
/usr/include/bits/waitstatus.h /usr/include/endian.h \
|
||||
/usr/include/bits/endian.h /usr/include/bits/byteswap.h \
|
||||
/usr/include/sys/types.h /usr/include/time.h /usr/include/sys/select.h \
|
||||
/usr/include/bits/select.h /usr/include/bits/sigset.h \
|
||||
/usr/include/bits/time.h /usr/include/sys/sysmacros.h \
|
||||
/usr/include/bits/pthreadtypes.h /usr/include/alloca.h \
|
||||
/usr/include/unistd.h /usr/include/bits/posix_opt.h \
|
||||
/usr/include/bits/environments.h /usr/include/bits/confname.h \
|
||||
/usr/include/getopt.h /usr/include/string.h /usr/include/xlocale.h \
|
||||
../../include/dcb.h ../../include/spinlock.h ../../include/thread.h \
|
||||
/usr/include/pthread.h /usr/include/sched.h /usr/include/bits/sched.h \
|
||||
/usr/include/bits/setjmp.h ../../include/buffer.h \
|
||||
../../include/gwbitmask.h ../../include/service.h ../../include/server.h \
|
||||
../../include/session.h /usr/include/sys/ioctl.h \
|
||||
/usr/include/bits/ioctls.h /usr/include/asm/ioctls.h \
|
||||
/usr/include/asm-generic/ioctls.h /usr/include/linux/ioctl.h \
|
||||
/usr/include/asm/ioctl.h /usr/include/asm-generic/ioctl.h \
|
||||
/usr/include/bits/ioctl-types.h /usr/include/sys/ttydefaults.h \
|
||||
/usr/include/errno.h /usr/include/bits/errno.h \
|
||||
/usr/include/linux/errno.h /usr/include/asm/errno.h \
|
||||
/usr/include/asm-generic/errno.h /usr/include/asm-generic/errno-base.h \
|
||||
/usr/include/sys/socket.h /usr/include/sys/uio.h /usr/include/bits/uio.h \
|
||||
/usr/include/bits/socket.h /usr/include/bits/sockaddr.h \
|
||||
/usr/include/asm/socket.h /usr/include/asm-generic/socket.h \
|
||||
/usr/include/asm/sockios.h /usr/include/asm-generic/sockios.h \
|
||||
/usr/include/netinet/in.h /usr/include/stdint.h \
|
||||
/usr/include/bits/wchar.h /usr/include/bits/in.h \
|
||||
/usr/include/arpa/inet.h ../../include/router.h ../../include/poll.h \
|
||||
../../include/atomic.h ../../include/gw.h /usr/include/ctype.h \
|
||||
/usr/include/netdb.h /usr/include/rpc/netdb.h /usr/include/bits/netdb.h \
|
||||
/usr/include/fcntl.h /usr/include/bits/fcntl.h /usr/include/bits/stat.h \
|
||||
/usr/include/syslog.h /usr/include/sys/syslog.h \
|
||||
/usr/include/bits/syslog-path.h /usr/include/pwd.h \
|
||||
/usr/include/sys/epoll.h /usr/include/signal.h \
|
||||
/usr/include/bits/signum.h /usr/include/bits/siginfo.h \
|
||||
/usr/include/bits/sigaction.h /usr/include/bits/sigcontext.h \
|
||||
/usr/include/bits/sigstack.h /usr/include/sys/ucontext.h \
|
||||
/usr/include/bits/sigthread.h \
|
||||
/usr/lib/gcc/x86_64-redhat-linux/4.4.7/include/stdbool.h \
|
||||
../../include/gateway_mysql.h ../../include/mysql_protocol.h \
|
||||
../../include/dcb.h ../include/telnetd.h ../../include/adminusers.h
|
||||
httpd.o: httpd.c ../include/httpd.h /usr/include/stdio.h \
|
||||
/usr/include/features.h /usr/include/sys/cdefs.h \
|
||||
/usr/include/bits/wordsize.h /usr/include/gnu/stubs.h \
|
||||
/usr/include/gnu/stubs-64.h \
|
||||
/usr/lib/gcc/x86_64-redhat-linux/4.4.7/include/stddef.h \
|
||||
/usr/include/bits/types.h /usr/include/bits/typesizes.h \
|
||||
/usr/include/libio.h /usr/include/_G_config.h /usr/include/wchar.h \
|
||||
/usr/lib/gcc/x86_64-redhat-linux/4.4.7/include/stdarg.h \
|
||||
/usr/include/bits/stdio_lim.h /usr/include/bits/sys_errlist.h \
|
||||
/usr/include/stdlib.h /usr/include/bits/waitflags.h \
|
||||
/usr/include/bits/waitstatus.h /usr/include/endian.h \
|
||||
/usr/include/bits/endian.h /usr/include/bits/byteswap.h \
|
||||
/usr/include/sys/types.h /usr/include/time.h /usr/include/sys/select.h \
|
||||
/usr/include/bits/select.h /usr/include/bits/sigset.h \
|
||||
/usr/include/bits/time.h /usr/include/sys/sysmacros.h \
|
||||
/usr/include/bits/pthreadtypes.h /usr/include/alloca.h \
|
||||
/usr/include/string.h /usr/include/xlocale.h ../../include/dcb.h \
|
||||
../../include/spinlock.h ../../include/thread.h /usr/include/pthread.h \
|
||||
/usr/include/sched.h /usr/include/bits/sched.h \
|
||||
/usr/include/bits/setjmp.h ../../include/buffer.h \
|
||||
../../include/gwbitmask.h ../../include/service.h ../../include/server.h \
|
||||
../../include/session.h /usr/include/sys/ioctl.h \
|
||||
/usr/include/bits/ioctls.h /usr/include/asm/ioctls.h \
|
||||
/usr/include/asm-generic/ioctls.h /usr/include/linux/ioctl.h \
|
||||
/usr/include/asm/ioctl.h /usr/include/asm-generic/ioctl.h \
|
||||
/usr/include/bits/ioctl-types.h /usr/include/sys/ttydefaults.h \
|
||||
/usr/include/errno.h /usr/include/bits/errno.h \
|
||||
/usr/include/linux/errno.h /usr/include/asm/errno.h \
|
||||
/usr/include/asm-generic/errno.h /usr/include/asm-generic/errno-base.h \
|
||||
/usr/include/sys/socket.h /usr/include/sys/uio.h /usr/include/bits/uio.h \
|
||||
/usr/include/bits/socket.h /usr/include/bits/sockaddr.h \
|
||||
/usr/include/asm/socket.h /usr/include/asm-generic/socket.h \
|
||||
/usr/include/asm/sockios.h /usr/include/asm-generic/sockios.h \
|
||||
/usr/include/netinet/in.h /usr/include/stdint.h \
|
||||
/usr/include/bits/wchar.h /usr/include/bits/in.h \
|
||||
/usr/include/arpa/inet.h ../../include/router.h ../../include/poll.h \
|
||||
../../include/atomic.h ../../include/gw.h /usr/include/ctype.h \
|
||||
/usr/include/netdb.h /usr/include/rpc/netdb.h /usr/include/bits/netdb.h \
|
||||
/usr/include/fcntl.h /usr/include/bits/fcntl.h /usr/include/bits/stat.h \
|
||||
/usr/include/unistd.h /usr/include/bits/posix_opt.h \
|
||||
/usr/include/bits/environments.h /usr/include/bits/confname.h \
|
||||
/usr/include/getopt.h /usr/include/syslog.h /usr/include/sys/syslog.h \
|
||||
/usr/include/bits/syslog-path.h /usr/include/pwd.h \
|
||||
/usr/include/sys/epoll.h /usr/include/signal.h \
|
||||
/usr/include/bits/signum.h /usr/include/bits/siginfo.h \
|
||||
/usr/include/bits/sigaction.h /usr/include/bits/sigcontext.h \
|
||||
/usr/include/bits/sigstack.h /usr/include/sys/ucontext.h \
|
||||
/usr/include/bits/sigthread.h \
|
||||
/usr/lib/gcc/x86_64-redhat-linux/4.4.7/include/stdbool.h \
|
||||
../../include/gateway_mysql.h ../../include/mysql_protocol.h \
|
||||
../../include/dcb.h
|
@ -91,7 +91,7 @@ void
|
||||
ModuleInit()
|
||||
{
|
||||
#if defined(SS_DEBUG)
|
||||
skygw_log_write(NULL,
|
||||
skygw_log_write(
|
||||
LOGFILE_MESSAGE,
|
||||
strdup("Initial MySQL Backend Protcol module."));
|
||||
#endif
|
||||
|
@ -81,7 +81,7 @@ version()
|
||||
void
|
||||
ModuleInit()
|
||||
{
|
||||
fprintf(stderr, "Initial MySQL Client Protcol module.\n");
|
||||
fprintf(stderr, "Initialise MySQL Client Protocol module.\n");
|
||||
}
|
||||
|
||||
/**
|
||||
@ -396,7 +396,7 @@ static int gw_mysql_do_authentication(DCB *dcb, GWBUF *queue) {
|
||||
free(auth_token);
|
||||
|
||||
if (auth_ret != 0) {
|
||||
fprintf(stderr, "<<< CLIENT AUTH FAILEDi for user [%s]\n", username);
|
||||
fprintf(stderr, "<<< CLIENT AUTH FAILED for user [%s]\n", username);
|
||||
}
|
||||
|
||||
return auth_ret;
|
||||
|
@ -60,14 +60,14 @@ libdebugcli.so: $(DEBUGCLIOBJ)
|
||||
$(CC) $(LDFLAGS) $(DEBUGCLIOBJ) $(LIBS) -o $@
|
||||
|
||||
libreadwritesplit.so:
|
||||
# (cd readwritesplit; make; cp $@ ..)
|
||||
# (cd readwritesplit; touch depend.mk ; make; cp $@ ..)
|
||||
|
||||
.c.o:
|
||||
$(CC) $(CFLAGS) $< -o $@
|
||||
|
||||
clean:
|
||||
rm -f $(OBJ) $(MODULES)
|
||||
(cd readwritesplit; make clean)
|
||||
(cd readwritesplit; touch depend.mk; make clean)
|
||||
|
||||
tags:
|
||||
ctags $(SRCS) $(HDRS)
|
||||
@ -76,7 +76,7 @@ tags:
|
||||
depend:
|
||||
@rm -f depend.mk
|
||||
cc -M $(CFLAGS) $(SRCS) > depend.mk
|
||||
(cd readwritesplit; make depend)
|
||||
(cd readwritesplit; touch depend.mk ; make depend)
|
||||
|
||||
install: $(MODULES)
|
||||
install -D $(MODULES) $(DEST)/MaxScale/modules
|
||||
|
@ -78,7 +78,7 @@ version()
|
||||
void
|
||||
ModuleInit()
|
||||
{
|
||||
skygw_log_write(NULL, LOGFILE_MESSAGE, "Initialise debug CLI router module %s.\n", version_str);
|
||||
skygw_log_write( LOGFILE_MESSAGE, "Initialise debug CLI router module %s.\n", version_str);
|
||||
spinlock_init(&instlock);
|
||||
instances = NULL;
|
||||
}
|
||||
|
@ -81,7 +81,7 @@ static void telnetdShowUsers(DCB *);
|
||||
* The subcommands of the show command
|
||||
*/
|
||||
struct subcommand showoptions[] = {
|
||||
{ "dcbs", 0, dprintAllDCBs, "Show all descriptor control blocks (network connections)",
|
||||
{ "dcbs", 0, dprintAllDCBs, "Show all descriptor control blocks (network connections)",
|
||||
{0, 0, 0} },
|
||||
{ "dcb", 1, dprintDCB, "Show a single descriptor control block e.g. show dcb 0x493340",
|
||||
{ARG_TYPE_ADDRESS, 0, 0} },
|
||||
@ -117,8 +117,6 @@ static void shutdown_monitor(DCB *dcb, MONITOR *monitor);
|
||||
* The subcommands of the shutdown command
|
||||
*/
|
||||
struct subcommand shutdownoptions[] = {
|
||||
{ "gateway", 0, shutdown_gateway, "Shutdown MaxScale",
|
||||
{0, 0, 0} },
|
||||
{ "maxscale", 0, shutdown_gateway, "Shutdown the MaxScale gateway",
|
||||
{0, 0, 0} },
|
||||
{ "monitor", 1, shutdown_monitor, "Shutdown a monitor, e.g. shutdown monitor 0x48381e0",
|
||||
@ -165,7 +163,7 @@ struct subcommand clearoptions[] = {
|
||||
{0, 0, 0} }
|
||||
};
|
||||
|
||||
static void reload_users(DCB *dcb, SERVICE *service);
|
||||
static void reload_dbusers(DCB *dcb, SERVICE *service);
|
||||
static void reload_config(DCB *dcb);
|
||||
|
||||
/**
|
||||
@ -174,7 +172,7 @@ static void reload_config(DCB *dcb);
|
||||
struct subcommand reloadoptions[] = {
|
||||
{ "config", 0, reload_config, "Reload the configuration data for MaxScale.",
|
||||
{ARG_TYPE_ADDRESS, 0, 0} },
|
||||
{ "users", 1, reload_users, "Reload the user data for a service. E.g. reload users 0x849420",
|
||||
{ "dbusers", 1, reload_dbusers, "Reload the dbuser data for a service. E.g. reload dbusers 0x849420",
|
||||
{ARG_TYPE_ADDRESS, 0, 0} },
|
||||
{ NULL, 0, NULL, NULL,
|
||||
{0, 0, 0} }
|
||||
@ -191,6 +189,25 @@ struct subcommand addoptions[] = {
|
||||
{0, 0, 0} }
|
||||
};
|
||||
|
||||
|
||||
static void telnetdRemoveUser(DCB *, char *, char *);
|
||||
/**
|
||||
* The subcommands of the remove command
|
||||
*/
|
||||
struct subcommand removeoptions[] = {
|
||||
{
|
||||
"user",
|
||||
2,
|
||||
telnetdRemoveUser,
|
||||
"Remove existing maxscale user. Example : remove user john johnpwd",
|
||||
{ARG_TYPE_STRING, ARG_TYPE_STRING, 0}
|
||||
},
|
||||
{
|
||||
NULL, 0, NULL, NULL, {0, 0, 0}
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
/**
|
||||
* The debug command table
|
||||
*/
|
||||
@ -200,6 +217,7 @@ static struct {
|
||||
} cmds[] = {
|
||||
{ "add", addoptions },
|
||||
{ "clear", clearoptions },
|
||||
{ "remove", removeoptions },
|
||||
{ "restart", restartoptions },
|
||||
{ "set", setoptions },
|
||||
{ "show", showoptions },
|
||||
@ -494,7 +512,7 @@ unsigned int bitvalue;
|
||||
* @param service The service to update
|
||||
*/
|
||||
static void
|
||||
reload_users(DCB *dcb, SERVICE *service)
|
||||
reload_dbusers(DCB *dcb, SERVICE *service)
|
||||
{
|
||||
dcb_printf(dcb, "Loaded %d database users for server %s.\n",
|
||||
reload_mysql_users(service), service->name);
|
||||
@ -513,7 +531,7 @@ reload_config(DCB *dcb)
|
||||
}
|
||||
|
||||
/**
|
||||
* Add a new admin user
|
||||
* Add a new maxscale admin user
|
||||
*
|
||||
* @param dcb The DCB for messages
|
||||
* @param user The user name
|
||||
@ -524,7 +542,7 @@ telnetdAddUser(DCB *dcb, char *user, char *passwd)
|
||||
{
|
||||
char *err;
|
||||
|
||||
if (admin_test_user(user))
|
||||
if (admin_search_user(user))
|
||||
{
|
||||
dcb_printf(dcb, "User %s already exists.\n", user);
|
||||
return;
|
||||
@ -535,6 +553,39 @@ char *err;
|
||||
dcb_printf(dcb, "Failed to add new user. %s\n", err);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Remove a maxscale admin user
|
||||
*
|
||||
* @param dcb The DCB for messages
|
||||
* @param user The user name
|
||||
* @param passwd The Password of the user
|
||||
*/
|
||||
static void telnetdRemoveUser(
|
||||
DCB* dcb,
|
||||
char* user,
|
||||
char* passwd)
|
||||
{
|
||||
char* err;
|
||||
|
||||
if (!admin_search_user(user))
|
||||
{
|
||||
dcb_printf(dcb, "User %s doesn't exist.\n", user);
|
||||
return;
|
||||
}
|
||||
|
||||
if ((err = admin_remove_user(user, passwd)) == NULL)
|
||||
{
|
||||
dcb_printf(dcb, "User %s has been successfully removed.\n", user);
|
||||
}
|
||||
else
|
||||
{
|
||||
dcb_printf(dcb, "Failed to remove user %s. %s\n", user, err);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* Print the adminsitration users
|
||||
*
|
||||
|
@ -1,125 +0,0 @@
|
||||
testroute.o: testroute.c /usr/include/stdio.h /usr/include/features.h \
|
||||
/usr/include/sys/cdefs.h /usr/include/bits/wordsize.h \
|
||||
/usr/include/gnu/stubs.h /usr/include/gnu/stubs-64.h \
|
||||
/usr/lib/gcc/x86_64-redhat-linux/4.4.7/include/stddef.h \
|
||||
/usr/include/bits/types.h /usr/include/bits/typesizes.h \
|
||||
/usr/include/libio.h /usr/include/_G_config.h /usr/include/wchar.h \
|
||||
/usr/lib/gcc/x86_64-redhat-linux/4.4.7/include/stdarg.h \
|
||||
/usr/include/bits/stdio_lim.h /usr/include/bits/sys_errlist.h \
|
||||
../../include/router.h ../../include/service.h /usr/include/time.h \
|
||||
/usr/include/bits/time.h /usr/include/xlocale.h ../../include/spinlock.h \
|
||||
../../include/thread.h /usr/include/pthread.h /usr/include/endian.h \
|
||||
/usr/include/bits/endian.h /usr/include/bits/byteswap.h \
|
||||
/usr/include/sched.h /usr/include/bits/sched.h \
|
||||
/usr/include/bits/pthreadtypes.h /usr/include/bits/setjmp.h \
|
||||
../../include/dcb.h ../../include/buffer.h ../../include/gwbitmask.h \
|
||||
../../include/server.h ../../include/session.h
|
||||
readconnroute.o: readconnroute.c /usr/include/stdio.h \
|
||||
/usr/include/features.h /usr/include/sys/cdefs.h \
|
||||
/usr/include/bits/wordsize.h /usr/include/gnu/stubs.h \
|
||||
/usr/include/gnu/stubs-64.h \
|
||||
/usr/lib/gcc/x86_64-redhat-linux/4.4.7/include/stddef.h \
|
||||
/usr/include/bits/types.h /usr/include/bits/typesizes.h \
|
||||
/usr/include/libio.h /usr/include/_G_config.h /usr/include/wchar.h \
|
||||
/usr/lib/gcc/x86_64-redhat-linux/4.4.7/include/stdarg.h \
|
||||
/usr/include/bits/stdio_lim.h /usr/include/bits/sys_errlist.h \
|
||||
/usr/include/stdlib.h /usr/include/bits/waitflags.h \
|
||||
/usr/include/bits/waitstatus.h /usr/include/endian.h \
|
||||
/usr/include/bits/endian.h /usr/include/bits/byteswap.h \
|
||||
/usr/include/sys/types.h /usr/include/time.h /usr/include/sys/select.h \
|
||||
/usr/include/bits/select.h /usr/include/bits/sigset.h \
|
||||
/usr/include/bits/time.h /usr/include/sys/sysmacros.h \
|
||||
/usr/include/bits/pthreadtypes.h /usr/include/alloca.h \
|
||||
/usr/include/string.h /usr/include/xlocale.h ../../include/service.h \
|
||||
../../include/spinlock.h ../../include/thread.h /usr/include/pthread.h \
|
||||
/usr/include/sched.h /usr/include/bits/sched.h \
|
||||
/usr/include/bits/setjmp.h ../../include/dcb.h ../../include/buffer.h \
|
||||
../../include/gwbitmask.h ../../include/server.h ../../include/router.h \
|
||||
../../include/session.h ../../include/atomic.h \
|
||||
../include/readconnection.h /home/skysql/workspace/utils/skygw_types.h \
|
||||
/usr/include/math.h /usr/include/bits/huge_val.h \
|
||||
/usr/include/bits/huge_valf.h /usr/include/bits/huge_vall.h \
|
||||
/usr/include/bits/inf.h /usr/include/bits/nan.h \
|
||||
/usr/include/bits/mathdef.h /usr/include/bits/mathcalls.h \
|
||||
/home/skysql/workspace/utils/skygw_utils.h \
|
||||
/home/skysql/workspace/utils/skygw_types.h \
|
||||
/home/skysql/workspace/utils/skygw_debug.h /usr/include/assert.h \
|
||||
/usr/include/unistd.h /usr/include/bits/posix_opt.h \
|
||||
/usr/include/bits/environments.h /usr/include/bits/confname.h \
|
||||
/usr/include/getopt.h /home/skysql/workspace/log_manager/log_manager.h \
|
||||
../include/mysql_client_server_protocol.h /usr/include/stdint.h \
|
||||
/usr/include/bits/wchar.h /usr/include/openssl/sha.h \
|
||||
/usr/include/openssl/e_os2.h /usr/include/openssl/opensslconf.h \
|
||||
/usr/include/openssl/opensslconf-x86_64.h /usr/include/sys/ioctl.h \
|
||||
/usr/include/bits/ioctls.h /usr/include/asm/ioctls.h \
|
||||
/usr/include/asm-generic/ioctls.h /usr/include/linux/ioctl.h \
|
||||
/usr/include/asm/ioctl.h /usr/include/asm-generic/ioctl.h \
|
||||
/usr/include/bits/ioctl-types.h /usr/include/sys/ttydefaults.h \
|
||||
/usr/include/errno.h /usr/include/bits/errno.h \
|
||||
/usr/include/linux/errno.h /usr/include/asm/errno.h \
|
||||
/usr/include/asm-generic/errno.h /usr/include/asm-generic/errno-base.h \
|
||||
/usr/include/sys/socket.h /usr/include/sys/uio.h /usr/include/bits/uio.h \
|
||||
/usr/include/bits/socket.h /usr/include/bits/sockaddr.h \
|
||||
/usr/include/asm/socket.h /usr/include/asm-generic/socket.h \
|
||||
/usr/include/asm/sockios.h /usr/include/asm-generic/sockios.h \
|
||||
/usr/include/netinet/in.h /usr/include/bits/in.h \
|
||||
/usr/include/arpa/inet.h \
|
||||
/usr/lib/gcc/x86_64-redhat-linux/4.4.7/include/stdbool.h \
|
||||
/usr/include/fcntl.h /usr/include/bits/fcntl.h /usr/include/bits/stat.h \
|
||||
../../include/poll.h ../../include/users.h ../../include/hashtable.h
|
||||
debugcli.o: debugcli.c /usr/include/stdio.h /usr/include/features.h \
|
||||
/usr/include/sys/cdefs.h /usr/include/bits/wordsize.h \
|
||||
/usr/include/gnu/stubs.h /usr/include/gnu/stubs-64.h \
|
||||
/usr/lib/gcc/x86_64-redhat-linux/4.4.7/include/stddef.h \
|
||||
/usr/include/bits/types.h /usr/include/bits/typesizes.h \
|
||||
/usr/include/libio.h /usr/include/_G_config.h /usr/include/wchar.h \
|
||||
/usr/lib/gcc/x86_64-redhat-linux/4.4.7/include/stdarg.h \
|
||||
/usr/include/bits/stdio_lim.h /usr/include/bits/sys_errlist.h \
|
||||
/usr/include/stdlib.h /usr/include/bits/waitflags.h \
|
||||
/usr/include/bits/waitstatus.h /usr/include/endian.h \
|
||||
/usr/include/bits/endian.h /usr/include/bits/byteswap.h \
|
||||
/usr/include/sys/types.h /usr/include/time.h /usr/include/sys/select.h \
|
||||
/usr/include/bits/select.h /usr/include/bits/sigset.h \
|
||||
/usr/include/bits/time.h /usr/include/sys/sysmacros.h \
|
||||
/usr/include/bits/pthreadtypes.h /usr/include/alloca.h \
|
||||
/usr/include/string.h /usr/include/xlocale.h ../../include/service.h \
|
||||
../../include/spinlock.h ../../include/thread.h /usr/include/pthread.h \
|
||||
/usr/include/sched.h /usr/include/bits/sched.h \
|
||||
/usr/include/bits/setjmp.h ../../include/dcb.h ../../include/buffer.h \
|
||||
../../include/gwbitmask.h ../../include/server.h ../../include/session.h \
|
||||
../../include/router.h ../../include/modules.h ../../include/atomic.h \
|
||||
../../include/poll.h ../include/debugcli.h \
|
||||
/home/skysql/workspace/utils/skygw_utils.h \
|
||||
/home/skysql/workspace/utils/skygw_types.h /usr/include/math.h \
|
||||
/usr/include/bits/huge_val.h /usr/include/bits/huge_valf.h \
|
||||
/usr/include/bits/huge_vall.h /usr/include/bits/inf.h \
|
||||
/usr/include/bits/nan.h /usr/include/bits/mathdef.h \
|
||||
/usr/include/bits/mathcalls.h /home/skysql/workspace/utils/skygw_debug.h \
|
||||
/usr/include/assert.h /usr/include/unistd.h \
|
||||
/usr/include/bits/posix_opt.h /usr/include/bits/environments.h \
|
||||
/usr/include/bits/confname.h /usr/include/getopt.h \
|
||||
/home/skysql/workspace/log_manager/log_manager.h
|
||||
debugcmd.o: debugcmd.c /usr/include/stdio.h /usr/include/features.h \
|
||||
/usr/include/sys/cdefs.h /usr/include/bits/wordsize.h \
|
||||
/usr/include/gnu/stubs.h /usr/include/gnu/stubs-64.h \
|
||||
/usr/lib/gcc/x86_64-redhat-linux/4.4.7/include/stddef.h \
|
||||
/usr/include/bits/types.h /usr/include/bits/typesizes.h \
|
||||
/usr/include/libio.h /usr/include/_G_config.h /usr/include/wchar.h \
|
||||
/usr/lib/gcc/x86_64-redhat-linux/4.4.7/include/stdarg.h \
|
||||
/usr/include/bits/stdio_lim.h /usr/include/bits/sys_errlist.h \
|
||||
/usr/include/stdlib.h /usr/include/bits/waitflags.h \
|
||||
/usr/include/bits/waitstatus.h /usr/include/endian.h \
|
||||
/usr/include/bits/endian.h /usr/include/bits/byteswap.h \
|
||||
/usr/include/sys/types.h /usr/include/time.h /usr/include/sys/select.h \
|
||||
/usr/include/bits/select.h /usr/include/bits/sigset.h \
|
||||
/usr/include/bits/time.h /usr/include/sys/sysmacros.h \
|
||||
/usr/include/bits/pthreadtypes.h /usr/include/alloca.h \
|
||||
/usr/include/string.h /usr/include/xlocale.h ../../include/service.h \
|
||||
../../include/spinlock.h ../../include/thread.h /usr/include/pthread.h \
|
||||
/usr/include/sched.h /usr/include/bits/sched.h \
|
||||
/usr/include/bits/setjmp.h ../../include/dcb.h ../../include/buffer.h \
|
||||
../../include/gwbitmask.h ../../include/server.h ../../include/session.h \
|
||||
../../include/router.h ../../include/modules.h ../../include/atomic.h \
|
||||
../../include/poll.h ../../include/users.h ../../include/hashtable.h \
|
||||
../../include/dbusers.h ../../include/config.h ../include/telnetd.h \
|
||||
../../include/adminusers.h ../../include/monitor.h ../include/debugcli.h
|
@ -56,8 +56,9 @@
|
||||
* with macros and MySQL commands with MYSQL_ prefix
|
||||
* avoiding any conflict with the standard ones
|
||||
* in mysql.h
|
||||
* 22/07/13 Mark Riddoch Addition of joined router option for Galera
|
||||
* 22/07/2013 Mark Riddoch Addition of joined router option for Galera
|
||||
* clusters
|
||||
* 31/07/2013 Massimiliano Pinto Added a check for candidate server, if NULL return
|
||||
*
|
||||
* @endverbatim
|
||||
*/
|
||||
@ -113,7 +114,7 @@ version()
|
||||
void
|
||||
ModuleInit()
|
||||
{
|
||||
skygw_log_write(NULL,
|
||||
skygw_log_write(
|
||||
LOGFILE_MESSAGE,
|
||||
"Initialise readconnroute router module %s.\n", version_str);
|
||||
spinlock_init(&instlock);
|
||||
@ -296,6 +297,12 @@ int i;
|
||||
}
|
||||
}
|
||||
|
||||
/* no candidate server here, clean and return NULL */
|
||||
if (!candidate) {
|
||||
free(client);
|
||||
return NULL;
|
||||
}
|
||||
|
||||
/*
|
||||
* We now have the server with the least connections.
|
||||
* Bump the connection count for this server
|
||||
|
@ -1,42 +0,0 @@
|
||||
readwritesplit.o: readwritesplit.c /usr/include/stdio.h \
|
||||
/usr/include/features.h /usr/include/sys/cdefs.h \
|
||||
/usr/include/bits/wordsize.h /usr/include/gnu/stubs.h \
|
||||
/usr/include/gnu/stubs-64.h \
|
||||
/usr/lib/gcc/x86_64-redhat-linux/4.4.7/include/stddef.h \
|
||||
/usr/include/bits/types.h /usr/include/bits/typesizes.h \
|
||||
/usr/include/libio.h /usr/include/_G_config.h /usr/include/wchar.h \
|
||||
/usr/lib/gcc/x86_64-redhat-linux/4.4.7/include/stdarg.h \
|
||||
/usr/include/bits/stdio_lim.h /usr/include/bits/sys_errlist.h \
|
||||
/usr/include/strings.h /usr/include/xlocale.h /usr/include/string.h \
|
||||
../../../include/router.h ../../../include/service.h /usr/include/time.h \
|
||||
/usr/include/bits/time.h ../../../include/spinlock.h \
|
||||
../../../include/thread.h /usr/include/pthread.h /usr/include/endian.h \
|
||||
/usr/include/bits/endian.h /usr/include/bits/byteswap.h \
|
||||
/usr/include/sched.h /usr/include/bits/sched.h \
|
||||
/usr/include/bits/pthreadtypes.h /usr/include/bits/setjmp.h \
|
||||
../../../include/dcb.h ../../../include/buffer.h \
|
||||
../../../include/gwbitmask.h ../../../include/server.h \
|
||||
../../../include/session.h ../../include/readwritesplit.h \
|
||||
/usr/include/stdlib.h /usr/include/bits/waitflags.h \
|
||||
/usr/include/bits/waitstatus.h /usr/include/sys/types.h \
|
||||
/usr/include/sys/select.h /usr/include/bits/select.h \
|
||||
/usr/include/bits/sigset.h /usr/include/sys/sysmacros.h \
|
||||
/usr/include/alloca.h /home/skysql/mariadb-5.5.32/include/mysql.h \
|
||||
/home/skysql/mariadb-5.5.32/include/mysql_version.h \
|
||||
/home/skysql/mariadb-5.5.32/include/mysql_com.h \
|
||||
/home/skysql/mariadb-5.5.32/include/mysql_time.h \
|
||||
/home/skysql/mariadb-5.5.32/include/my_list.h \
|
||||
/home/skysql/mariadb-5.5.32/include/typelib.h \
|
||||
/home/skysql/mariadb-5.5.32/include/my_alloc.h \
|
||||
/home/skysql/workspace/utils/skygw_utils.h \
|
||||
/home/skysql/workspace/utils/skygw_types.h /usr/include/math.h \
|
||||
/usr/include/bits/huge_val.h /usr/include/bits/huge_valf.h \
|
||||
/usr/include/bits/huge_vall.h /usr/include/bits/inf.h \
|
||||
/usr/include/bits/nan.h /usr/include/bits/mathdef.h \
|
||||
/usr/include/bits/mathcalls.h /home/skysql/workspace/utils/skygw_debug.h \
|
||||
/usr/include/assert.h /usr/include/unistd.h \
|
||||
/usr/include/bits/posix_opt.h /usr/include/bits/environments.h \
|
||||
/usr/include/bits/confname.h /usr/include/getopt.h \
|
||||
/home/skysql/workspace/log_manager/log_manager.h \
|
||||
/home/skysql/workspace/query_classifier/query_classifier.h \
|
||||
/home/skysql/workspace/query_classifier/../utils/skygw_utils.h
|
@ -88,8 +88,7 @@ version()
|
||||
void
|
||||
ModuleInit()
|
||||
{
|
||||
skygw_log_write_flush(NULL,
|
||||
LOGFILE_MESSAGE,
|
||||
skygw_log_write_flush(LOGFILE_MESSAGE,
|
||||
"Initialize read/write split router module.\n");
|
||||
spinlock_init(&instlock);
|
||||
instances = NULL;
|
||||
@ -104,8 +103,7 @@ ModuleInit()
|
||||
* @return The module object
|
||||
*/
|
||||
ROUTER_OBJECT* GetModuleObject() {
|
||||
skygw_log_write(NULL,
|
||||
LOGFILE_TRACE,
|
||||
skygw_log_write(LOGFILE_TRACE,
|
||||
"Returning readwritesplit router module object.");
|
||||
return &MyObject;
|
||||
}
|
||||
@ -206,17 +204,17 @@ static void* newSession(
|
||||
int i;
|
||||
|
||||
if ((client = (CLIENT_SESSION *)malloc(sizeof(CLIENT_SESSION))) == NULL)
|
||||
{
|
||||
{
|
||||
return NULL;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Find a backend server to connect to. This is the extent of the
|
||||
* load balancing algorithm we need to implement for this simple
|
||||
* connection router.
|
||||
*/
|
||||
for (i = 0; inst->servers[i]; i++)
|
||||
{
|
||||
{
|
||||
|
||||
if (inst->servers[i] && SERVER_IS_SLAVE(inst->servers[i]->server))
|
||||
{
|
||||
@ -226,8 +224,8 @@ static void* newSession(
|
||||
}
|
||||
|
||||
/**
|
||||
* Loop over all the servers and find any that have fewer connections than our
|
||||
* candidate server.
|
||||
* Loop over all the servers and find any that have fewer connections
|
||||
* than our candidate server.
|
||||
*
|
||||
* If a server has less connections than the current candidate we mark this
|
||||
* as the new candidate to connect to.
|
||||
@ -434,7 +432,7 @@ static int routeQuery(
|
||||
"Packet type\t%s",
|
||||
STRPACKETTYPE(packet_type));
|
||||
#endif
|
||||
|
||||
|
||||
switch (qtype) {
|
||||
case QUERY_TYPE_WRITE:
|
||||
#if defined(SS_DEBUG_)
|
||||
|
@ -60,7 +60,7 @@ ModuleInit()
|
||||
ROUTER_OBJECT *
|
||||
GetModuleObject()
|
||||
{
|
||||
fprintf(stderr, "Returing test router module object.\n");
|
||||
fprintf(stderr, "Returning test router module object.\n");
|
||||
return &MyObject;
|
||||
}
|
||||
|
||||
|
@ -204,7 +204,7 @@ tb_replication_consistency_init(
|
||||
strcpy(rpl[i].error_message, errmsg.c_str());
|
||||
|
||||
// This will log error to log file
|
||||
skygw_log_write_flush(NULL, LOGFILE_ERROR, (char *)errmsg.c_str());
|
||||
skygw_log_write_flush( LOGFILE_ERROR, (char *)errmsg.c_str());
|
||||
|
||||
return (1);
|
||||
}
|
||||
@ -273,7 +273,7 @@ error_handling:
|
||||
tb_consistency[i].error_message = (char *)malloc(errmsg.size()+1);
|
||||
strcpy(tb_consistency[i].error_message, errmsg.c_str());
|
||||
// This will log error to log file
|
||||
skygw_log_write_flush(NULL, LOGFILE_ERROR, (char *)errmsg.c_str());
|
||||
skygw_log_write_flush( LOGFILE_ERROR, (char *)errmsg.c_str());
|
||||
|
||||
err_exit:
|
||||
*n_servers=i-1;
|
||||
@ -335,7 +335,7 @@ error_handling:
|
||||
rpl->error_message = (char *)malloc(errmsg.size()+1);
|
||||
strcpy(rpl->error_message, errmsg.c_str());
|
||||
// This will log error to log file
|
||||
skygw_log_write_flush(NULL, LOGFILE_ERROR, (char *)errmsg.c_str());
|
||||
skygw_log_write_flush( LOGFILE_ERROR, (char *)errmsg.c_str());
|
||||
|
||||
err_exit:
|
||||
return (1);
|
||||
@ -420,7 +420,7 @@ error_handling:
|
||||
*error_message = (char *)malloc(errmsg.size()+1);
|
||||
strcpy(*error_message, errmsg.c_str());
|
||||
// This will log error to log file
|
||||
skygw_log_write_flush(NULL, LOGFILE_ERROR, (char *)errmsg.c_str());
|
||||
skygw_log_write_flush( LOGFILE_ERROR, (char *)errmsg.c_str());
|
||||
|
||||
err_exit:
|
||||
return (1);
|
||||
|
@ -205,7 +205,7 @@ tbrl_update_consistency(
|
||||
|
||||
if (tbr_trace) {
|
||||
// This will log error to log file
|
||||
skygw_log_write_flush(NULL, LOGFILE_TRACE,
|
||||
skygw_log_write_flush( LOGFILE_TRACE,
|
||||
(char *)"TRC Trace: Current state for table %s in server %d binlog_pos %lu GTID '%s'",
|
||||
tc->db_table, tc->server_id, tc->binlog_pos, gtid.get_string().c_str());
|
||||
}
|
||||
@ -261,7 +261,7 @@ tbrl_update_server_status(
|
||||
|
||||
if (tbr_trace) {
|
||||
// This will log error to log file
|
||||
skygw_log_write_flush(NULL, LOGFILE_TRACE,
|
||||
skygw_log_write_flush( LOGFILE_TRACE,
|
||||
(char *)"TRC Trace: Current state for server %d binlog_pos %lu GTID '%s'",
|
||||
ts->server_id, ts->binlog_pos, gtid.get_string().c_str());
|
||||
}
|
||||
@ -309,7 +309,7 @@ void* tb_replication_listener_reader(
|
||||
|
||||
if (tbr_trace) {
|
||||
string trace_msg = "Server " + string(uri) + string(server_type);
|
||||
skygw_log_write_flush(NULL, LOGFILE_TRACE, (char *)trace_msg.c_str());
|
||||
skygw_log_write_flush( LOGFILE_TRACE, (char *)trace_msg.c_str());
|
||||
}
|
||||
|
||||
Binary_log_event *event;
|
||||
@ -373,7 +373,7 @@ void* tb_replication_listener_reader(
|
||||
}
|
||||
|
||||
if (tbr_debug) {
|
||||
skygw_log_write_flush(NULL, LOGFILE_TRACE,
|
||||
skygw_log_write_flush( LOGFILE_TRACE,
|
||||
(char *)"TRC Debug: Thread %ld Server %d Binlog_pos %lu event %d"
|
||||
" : %s Query %s DB %s gtid '%s'",
|
||||
id,
|
||||
@ -405,7 +405,7 @@ void* tb_replication_listener_reader(
|
||||
}
|
||||
|
||||
if (tbr_debug) {
|
||||
skygw_log_write_flush(NULL, LOGFILE_TRACE,
|
||||
skygw_log_write_flush( LOGFILE_TRACE,
|
||||
(char *)"TRC Debug: Thread %ld Server %d Binlog_pos %lu event %d"
|
||||
" : %s gtid '%s'",
|
||||
id,
|
||||
@ -429,7 +429,7 @@ void* tb_replication_listener_reader(
|
||||
tid2tname[table_map_event->table_id]= database_dot_table;
|
||||
|
||||
if (tbr_debug) {
|
||||
skygw_log_write_flush(NULL, LOGFILE_TRACE,
|
||||
skygw_log_write_flush( LOGFILE_TRACE,
|
||||
(char *)"TRC Debug: Thread %ld Server %d Binlog_pos %lu event %d"
|
||||
" : %s dbtable '%s' id %d",
|
||||
id,
|
||||
@ -460,7 +460,7 @@ void* tb_replication_listener_reader(
|
||||
}
|
||||
|
||||
if (tbr_debug) {
|
||||
skygw_log_write_flush(NULL, LOGFILE_TRACE,
|
||||
skygw_log_write_flush( LOGFILE_TRACE,
|
||||
(char *)"TRC Debug: Thread %ld Server %d Binlog_pos %lu event %d"
|
||||
" : %s dbtable '%s' id %d",
|
||||
id,
|
||||
@ -488,14 +488,14 @@ void* tb_replication_listener_reader(
|
||||
catch(ListenerException e)
|
||||
{
|
||||
string err = std::string("Listener exception: ")+ e.what();
|
||||
skygw_log_write_flush(NULL, LOGFILE_ERROR, (char *)err.c_str());
|
||||
skygw_log_write_flush( LOGFILE_ERROR, (char *)err.c_str());
|
||||
// Re-Throw this one.
|
||||
throw;
|
||||
}
|
||||
catch(boost::system::error_code e)
|
||||
{
|
||||
string err = std::string("Listener system exception: ")+ e.message();
|
||||
skygw_log_write_flush(NULL, LOGFILE_ERROR, (char *)err.c_str());
|
||||
skygw_log_write_flush( LOGFILE_ERROR, (char *)err.c_str());
|
||||
// Re-Throw this one.
|
||||
throw;
|
||||
}
|
||||
@ -503,7 +503,7 @@ void* tb_replication_listener_reader(
|
||||
catch(std::exception const& e)
|
||||
{
|
||||
string err = std::string("Listener other exception: ")+ e.what();
|
||||
skygw_log_write_flush(NULL, LOGFILE_ERROR, (char *)err.c_str());
|
||||
skygw_log_write_flush( LOGFILE_ERROR, (char *)err.c_str());
|
||||
// Re-Throw this one.
|
||||
throw;
|
||||
}
|
||||
@ -511,7 +511,7 @@ void* tb_replication_listener_reader(
|
||||
catch(...)
|
||||
{
|
||||
string err = std::string("Unknown exception: ");
|
||||
skygw_log_write_flush(NULL, LOGFILE_ERROR, (char *)err.c_str());
|
||||
skygw_log_write_flush( LOGFILE_ERROR, (char *)err.c_str());
|
||||
// Re-Throw this one.
|
||||
// It was not handled so you want to make sure it is handled correctly by
|
||||
// the OS. So just allow the exception to keep propagating.
|
||||
@ -520,7 +520,7 @@ void* tb_replication_listener_reader(
|
||||
|
||||
if (tbr_trace) {
|
||||
string trace_msg = string("Listener for server ") + string(uri) + string(server_type) + string(" shutting down");
|
||||
skygw_log_write_flush(NULL, LOGFILE_TRACE, (char *)trace_msg.c_str());
|
||||
skygw_log_write_flush( LOGFILE_TRACE, (char *)trace_msg.c_str());
|
||||
}
|
||||
|
||||
// Thread execution will end here
|
||||
@ -551,7 +551,7 @@ tb_replication_listener_shutdown(
|
||||
Binary_log *binlog = (*b_it).second;
|
||||
|
||||
if (tbr_debug) {
|
||||
skygw_log_write_flush(NULL, LOGFILE_TRACE,
|
||||
skygw_log_write_flush( LOGFILE_TRACE,
|
||||
(char *)"TRC Debug: Shutting down replication listener for server %s",
|
||||
binlog->get_url().c_str());
|
||||
}
|
||||
@ -562,14 +562,14 @@ tb_replication_listener_shutdown(
|
||||
catch(ListenerException e)
|
||||
{
|
||||
string err = std::string("Listener exception: ")+ e.what();
|
||||
skygw_log_write_flush(NULL, LOGFILE_ERROR, (char *)err.c_str());
|
||||
skygw_log_write_flush( LOGFILE_ERROR, (char *)err.c_str());
|
||||
// Re-Throw this one.
|
||||
throw;
|
||||
}
|
||||
catch(boost::system::error_code e)
|
||||
{
|
||||
string err = std::string("Listener system exception: ")+ e.message();
|
||||
skygw_log_write_flush(NULL, LOGFILE_ERROR, (char *)err.c_str());
|
||||
skygw_log_write_flush( LOGFILE_ERROR, (char *)err.c_str());
|
||||
// Re-Throw this one.
|
||||
throw;
|
||||
}
|
||||
@ -577,7 +577,7 @@ tb_replication_listener_shutdown(
|
||||
catch(std::exception const& e)
|
||||
{
|
||||
string err = std::string("Listener other exception: ")+ e.what();
|
||||
skygw_log_write_flush(NULL, LOGFILE_ERROR, (char *)err.c_str());
|
||||
skygw_log_write_flush( LOGFILE_ERROR, (char *)err.c_str());
|
||||
// Re-Throw this one.
|
||||
throw;
|
||||
}
|
||||
@ -585,7 +585,7 @@ tb_replication_listener_shutdown(
|
||||
catch(...)
|
||||
{
|
||||
string err = std::string("Unknown exception: ");
|
||||
skygw_log_write_flush(NULL, LOGFILE_ERROR, (char *)err.c_str());
|
||||
skygw_log_write_flush( LOGFILE_ERROR, (char *)err.c_str());
|
||||
// Re-Throw this one.
|
||||
// It was not handled so you want to make sure it is handled correctly by
|
||||
// the OS. So just allow the exception to keep propagating.
|
||||
@ -598,7 +598,7 @@ tb_replication_listener_shutdown(
|
||||
*error_message = (char *)malloc(err.size()+1);
|
||||
strcpy(*error_message, err.c_str());
|
||||
|
||||
skygw_log_write_flush(NULL, LOGFILE_ERROR, (char *)err.c_str());
|
||||
skygw_log_write_flush( LOGFILE_ERROR, (char *)err.c_str());
|
||||
|
||||
return (1);
|
||||
}
|
||||
@ -640,7 +640,7 @@ tb_replication_listener_consistency(
|
||||
if (found) {
|
||||
if (tbr_trace) {
|
||||
// This will log error to log file
|
||||
skygw_log_write_flush(NULL, LOGFILE_TRACE,
|
||||
skygw_log_write_flush( LOGFILE_TRACE,
|
||||
(char *)"TRC Trace: Current state for table %s in server %d binlog_pos %lu GTID '%s'",
|
||||
tc->db_table, tc->server_id, tc->binlog_pos, tc->gtid);
|
||||
}
|
||||
@ -683,7 +683,7 @@ tb_replication_listener_reconnect(
|
||||
if (found) {
|
||||
|
||||
if (tbr_debug) {
|
||||
skygw_log_write_flush(NULL, LOGFILE_TRACE,
|
||||
skygw_log_write_flush( LOGFILE_TRACE,
|
||||
(char *)"TRC Debug: Reconnecting to server %s",
|
||||
binlog->get_url().c_str());
|
||||
}
|
||||
@ -719,14 +719,14 @@ tb_replication_listener_reconnect(
|
||||
catch(ListenerException e)
|
||||
{
|
||||
string err = std::string("Listener exception: ")+ e.what();
|
||||
skygw_log_write_flush(NULL, LOGFILE_ERROR, (char *)err.c_str());
|
||||
skygw_log_write_flush( LOGFILE_ERROR, (char *)err.c_str());
|
||||
// Re-Throw this one.
|
||||
throw;
|
||||
}
|
||||
catch(boost::system::error_code e)
|
||||
{
|
||||
string err = std::string("Listener system exception: ")+ e.message();
|
||||
skygw_log_write_flush(NULL, LOGFILE_ERROR, (char *)err.c_str());
|
||||
skygw_log_write_flush( LOGFILE_ERROR, (char *)err.c_str());
|
||||
// Re-Throw this one.
|
||||
throw;
|
||||
}
|
||||
@ -734,7 +734,7 @@ tb_replication_listener_reconnect(
|
||||
catch(std::exception const& e)
|
||||
{
|
||||
string err = std::string("Listener other exception: ")+ e.what();
|
||||
skygw_log_write_flush(NULL, LOGFILE_ERROR, (char *)err.c_str());
|
||||
skygw_log_write_flush( LOGFILE_ERROR, (char *)err.c_str());
|
||||
// Re-Throw this one.
|
||||
throw;
|
||||
}
|
||||
@ -742,7 +742,7 @@ tb_replication_listener_reconnect(
|
||||
catch(...)
|
||||
{
|
||||
string err = std::string("Unknown exception: ");
|
||||
skygw_log_write_flush(NULL, LOGFILE_ERROR, (char *)err.c_str());
|
||||
skygw_log_write_flush( LOGFILE_ERROR, (char *)err.c_str());
|
||||
// Re-Throw this one.
|
||||
// It was not handled so you want to make sure it is handled correctly by
|
||||
// the OS. So just allow the exception to keep propagating.
|
||||
@ -761,7 +761,7 @@ err_exit:
|
||||
if (error_message) {
|
||||
rpl->error_message = (char *)malloc(strlen(error_message +1));
|
||||
strcpy(rpl->error_message, error_message);
|
||||
skygw_log_write_flush(NULL, LOGFILE_ERROR, error_message);
|
||||
skygw_log_write_flush( LOGFILE_ERROR, error_message);
|
||||
}
|
||||
|
||||
return (1);
|
||||
@ -802,7 +802,7 @@ void
|
||||
tm = (tbr_metadata_t**)calloc(nelems, sizeof(tbr_metadata_t*));
|
||||
|
||||
if (!tm) {
|
||||
skygw_log_write_flush(NULL, LOGFILE_ERROR, (char *)"Error: TRM: Out of memory");
|
||||
skygw_log_write_flush( LOGFILE_ERROR, (char *)"Error: TRM: Out of memory");
|
||||
goto my_exit;
|
||||
|
||||
}
|
||||
@ -841,7 +841,7 @@ void
|
||||
ts = (tbr_server_t**)calloc(nelems, sizeof(tbr_server_t*));
|
||||
|
||||
if (!ts) {
|
||||
skygw_log_write_flush(NULL, LOGFILE_ERROR, (char *)"Error: TRM: Out of memory");
|
||||
skygw_log_write_flush( LOGFILE_ERROR, (char *)"Error: TRM: Out of memory");
|
||||
goto my_exit;
|
||||
}
|
||||
|
||||
@ -870,27 +870,27 @@ void
|
||||
catch(ListenerException e)
|
||||
{
|
||||
string err = std::string("Listener exception: ")+ e.what();
|
||||
skygw_log_write_flush(NULL, LOGFILE_ERROR, (char *)err.c_str());
|
||||
skygw_log_write_flush( LOGFILE_ERROR, (char *)err.c_str());
|
||||
goto my_exit;
|
||||
}
|
||||
catch(boost::system::error_code e)
|
||||
{
|
||||
string err = std::string("Listener system exception: ")+ e.message();
|
||||
skygw_log_write_flush(NULL, LOGFILE_ERROR, (char *)err.c_str());
|
||||
skygw_log_write_flush( LOGFILE_ERROR, (char *)err.c_str());
|
||||
goto my_exit;
|
||||
}
|
||||
// Try and catch all exceptions
|
||||
catch(std::exception const& e)
|
||||
{
|
||||
string err = std::string("Listener other exception: ")+ e.what();
|
||||
skygw_log_write_flush(NULL, LOGFILE_ERROR, (char *)err.c_str());
|
||||
skygw_log_write_flush( LOGFILE_ERROR, (char *)err.c_str());
|
||||
goto my_exit;
|
||||
}
|
||||
// Rest of them
|
||||
catch(...)
|
||||
{
|
||||
string err = std::string("Unknown exception: ");
|
||||
skygw_log_write_flush(NULL, LOGFILE_ERROR, (char *)err.c_str());
|
||||
skygw_log_write_flush( LOGFILE_ERROR, (char *)err.c_str());
|
||||
goto my_exit;
|
||||
}
|
||||
}
|
||||
@ -906,7 +906,7 @@ my_exit:
|
||||
}
|
||||
|
||||
if (tbr_trace) {
|
||||
skygw_log_write_flush(NULL, LOGFILE_TRACE, (char *)"Shutting down the metadata updater thread");
|
||||
skygw_log_write_flush( LOGFILE_TRACE, (char *)"Shutting down the metadata updater thread");
|
||||
}
|
||||
|
||||
pthread_exit(NULL);
|
||||
@ -974,27 +974,27 @@ tb_replication_listener_init(
|
||||
catch(ListenerException e)
|
||||
{
|
||||
err = std::string("Listener exception: ")+ e.what();
|
||||
skygw_log_write_flush(NULL, LOGFILE_ERROR, (char *)err.c_str());
|
||||
skygw_log_write_flush( LOGFILE_ERROR, (char *)err.c_str());
|
||||
goto error_exit;
|
||||
}
|
||||
catch(boost::system::error_code e)
|
||||
{
|
||||
err = std::string("Listener system exception: ")+ e.message();
|
||||
skygw_log_write_flush(NULL, LOGFILE_ERROR, (char *)err.c_str());
|
||||
skygw_log_write_flush( LOGFILE_ERROR, (char *)err.c_str());
|
||||
goto error_exit;
|
||||
}
|
||||
// Try and catch all exceptions
|
||||
catch(std::exception const& e)
|
||||
{
|
||||
err = std::string("Listener other exception: ")+ e.what();
|
||||
skygw_log_write_flush(NULL, LOGFILE_ERROR, (char *)err.c_str());
|
||||
skygw_log_write_flush( LOGFILE_ERROR, (char *)err.c_str());
|
||||
goto error_exit;
|
||||
}
|
||||
// Rest of them
|
||||
catch(...)
|
||||
{
|
||||
err = std::string("Unknown exception: ");
|
||||
skygw_log_write_flush(NULL, LOGFILE_ERROR, (char *)err.c_str());
|
||||
skygw_log_write_flush( LOGFILE_ERROR, (char *)err.c_str());
|
||||
goto error_exit;
|
||||
}
|
||||
|
||||
@ -1026,7 +1026,7 @@ tb_replication_listener_done(
|
||||
ts = (tbr_server_t **)calloc(nelems2, sizeof(tbr_server_t*));
|
||||
|
||||
if (tm == NULL || ts == NULL) {
|
||||
skygw_log_write_flush(NULL, LOGFILE_ERROR, (char *)"TRM: Out of memory");
|
||||
skygw_log_write_flush( LOGFILE_ERROR, (char *)"TRM: Out of memory");
|
||||
goto error_exit;
|
||||
}
|
||||
|
||||
@ -1094,32 +1094,32 @@ tb_replication_listener_done(
|
||||
catch(ListenerException e)
|
||||
{
|
||||
string err = std::string("Listener exception: ")+ e.what();
|
||||
skygw_log_write_flush(NULL, LOGFILE_ERROR, (char *)err.c_str());
|
||||
skygw_log_write_flush( LOGFILE_ERROR, (char *)err.c_str());
|
||||
goto error_exit;
|
||||
}
|
||||
catch(boost::system::error_code e)
|
||||
{
|
||||
string err = std::string("Listener system exception: ")+ e.message();
|
||||
skygw_log_write_flush(NULL, LOGFILE_ERROR, (char *)err.c_str());
|
||||
skygw_log_write_flush( LOGFILE_ERROR, (char *)err.c_str());
|
||||
goto error_exit;
|
||||
}
|
||||
// Try and catch all exceptions
|
||||
catch(std::exception const& e)
|
||||
{
|
||||
string err = std::string("Listener other exception: ")+ e.what();
|
||||
skygw_log_write_flush(NULL, LOGFILE_ERROR, (char *)err.c_str());
|
||||
skygw_log_write_flush( LOGFILE_ERROR, (char *)err.c_str());
|
||||
goto error_exit;
|
||||
}
|
||||
// Rest of them
|
||||
catch(...)
|
||||
{
|
||||
string err = std::string("Unknown exception: ");
|
||||
skygw_log_write_flush(NULL, LOGFILE_ERROR, (char *)err.c_str());
|
||||
skygw_log_write_flush( LOGFILE_ERROR, (char *)err.c_str());
|
||||
goto error_exit;
|
||||
}
|
||||
|
||||
if (tbr_trace) {
|
||||
skygw_log_write_flush(NULL, LOGFILE_TRACE, (char *)"Shutting down the listeners");
|
||||
skygw_log_write_flush( LOGFILE_TRACE, (char *)"Shutting down the listeners");
|
||||
goto error_exit;
|
||||
}
|
||||
|
||||
|
@ -54,10 +54,10 @@ tbrm_report_error(
|
||||
const char *file, /*!< in: File name */
|
||||
int line) /*!< in: Line number */
|
||||
{
|
||||
skygw_log_write_flush(NULL, LOGFILE_ERROR,
|
||||
skygw_log_write_flush( LOGFILE_ERROR,
|
||||
(char *)"%s at file %s line %d", message, file, line);
|
||||
if (con != NULL) {
|
||||
skygw_log_write_flush(NULL, LOGFILE_ERROR,
|
||||
skygw_log_write_flush( LOGFILE_ERROR,
|
||||
(char *)"%s", mysql_error(con));
|
||||
mysql_close(con);
|
||||
}
|
||||
@ -74,12 +74,12 @@ tbrm_stmt_error(
|
||||
const char *file, /*!< in: File name */
|
||||
int line) /*!< in: Line number */
|
||||
{
|
||||
skygw_log_write_flush(NULL, LOGFILE_ERROR,
|
||||
skygw_log_write_flush( LOGFILE_ERROR,
|
||||
(char *)"%s at file %s line %d", message, file, line);
|
||||
|
||||
if (stmt != NULL)
|
||||
{
|
||||
skygw_log_write_flush(NULL, LOGFILE_ERROR,
|
||||
skygw_log_write_flush( LOGFILE_ERROR,
|
||||
(char *)"Error %u (%s): %s\n",
|
||||
mysql_stmt_errno (stmt),
|
||||
mysql_stmt_sqlstate (stmt),
|
||||
@ -104,7 +104,7 @@ tbrm_create_metadata(
|
||||
unsigned int myerrno=0;
|
||||
|
||||
if (!con) {
|
||||
skygw_log_write_flush(NULL, LOGFILE_ERROR,
|
||||
skygw_log_write_flush( LOGFILE_ERROR,
|
||||
(char *)"Mysql init failed", mysql_error(con));
|
||||
return false;
|
||||
}
|
||||
@ -230,7 +230,7 @@ tbrm_read_consistency_metadata(
|
||||
MYSQL *con = mysql_init(NULL);
|
||||
|
||||
if (!con) {
|
||||
skygw_log_write_flush(NULL, LOGFILE_ERROR,
|
||||
skygw_log_write_flush( LOGFILE_ERROR,
|
||||
(char *)"Error: MySQL init failed");
|
||||
return false;
|
||||
}
|
||||
@ -271,7 +271,7 @@ tbrm_read_consistency_metadata(
|
||||
tm = (tbr_metadata_t*) malloc(nrows * sizeof(tbr_metadata_t));
|
||||
|
||||
if (!tm) {
|
||||
skygw_log_write_flush(NULL, LOGFILE_ERROR,
|
||||
skygw_log_write_flush( LOGFILE_ERROR,
|
||||
(char *)"Error: Out of memory");
|
||||
goto error_exit;
|
||||
}
|
||||
@ -287,7 +287,7 @@ tbrm_read_consistency_metadata(
|
||||
tm[i].db_table = (unsigned char *)malloc(lengths[0]);
|
||||
|
||||
if (!tm[i].db_table) {
|
||||
skygw_log_write_flush(NULL, LOGFILE_ERROR,
|
||||
skygw_log_write_flush( LOGFILE_ERROR,
|
||||
(char *)"Error: Out of memory");
|
||||
goto error_exit;
|
||||
}
|
||||
@ -300,7 +300,7 @@ tbrm_read_consistency_metadata(
|
||||
|
||||
if (!tm[i].gtid) {
|
||||
free(tm[i].db_table);
|
||||
skygw_log_write_flush(NULL, LOGFILE_ERROR,
|
||||
skygw_log_write_flush( LOGFILE_ERROR,
|
||||
(char *)"Error: Out of memory");
|
||||
goto error_exit;
|
||||
}
|
||||
@ -388,7 +388,7 @@ tbrm_write_consistency_metadata(
|
||||
MYSQL *con = mysql_init(NULL);
|
||||
|
||||
if (!con) {
|
||||
skygw_log_write_flush(NULL, LOGFILE_ERROR,
|
||||
skygw_log_write_flush( LOGFILE_ERROR,
|
||||
(char *)"Mysql init failed", mysql_error(con));
|
||||
return false;
|
||||
}
|
||||
@ -540,7 +540,7 @@ tbrm_write_consistency_metadata(
|
||||
goto error_exit;
|
||||
}
|
||||
if (tbr_debug) {
|
||||
skygw_log_write_flush(NULL, LOGFILE_TRACE,
|
||||
skygw_log_write_flush( LOGFILE_TRACE,
|
||||
(char *)"TRC Debug: Metadata state updated for %s in server %d is binlog_pos %lu gtid '%s'",
|
||||
dbtable, serverid, binlogpos, gtid);
|
||||
}
|
||||
@ -562,7 +562,7 @@ tbrm_write_consistency_metadata(
|
||||
}
|
||||
|
||||
if (tbr_debug) {
|
||||
skygw_log_write_flush(NULL, LOGFILE_TRACE,
|
||||
skygw_log_write_flush( LOGFILE_TRACE,
|
||||
(char *)"TRC Debug: Metadata state inserted for %s in server %d is binlog_pos %lu gtid '%s'",
|
||||
dbtable, serverid, binlogpos, gtid);
|
||||
}
|
||||
@ -626,7 +626,7 @@ tbrm_read_server_metadata(
|
||||
MYSQL *con = mysql_init(NULL);
|
||||
|
||||
if (!con) {
|
||||
skygw_log_write_flush(NULL, LOGFILE_ERROR,
|
||||
skygw_log_write_flush( LOGFILE_ERROR,
|
||||
(char *)"Mysql init failed", mysql_error(con));
|
||||
|
||||
return false;
|
||||
@ -668,7 +668,7 @@ tbrm_read_server_metadata(
|
||||
ts = (tbr_server_t*) malloc(nrows * sizeof(tbr_server_t));
|
||||
|
||||
if(!ts) {
|
||||
skygw_log_write_flush(NULL, LOGFILE_ERROR,
|
||||
skygw_log_write_flush( LOGFILE_ERROR,
|
||||
(char *)"Error: Out of memory");
|
||||
goto error_exit;
|
||||
}
|
||||
@ -687,7 +687,7 @@ tbrm_read_server_metadata(
|
||||
ts[i].gtid = (unsigned char *)malloc((lengths[2])*sizeof(unsigned char));
|
||||
|
||||
if (!ts[i].gtid) {
|
||||
skygw_log_write_flush(NULL, LOGFILE_ERROR,
|
||||
skygw_log_write_flush( LOGFILE_ERROR,
|
||||
(char *)"Error: Out of memory");
|
||||
goto error_exit;
|
||||
}
|
||||
@ -774,7 +774,7 @@ tbrm_write_server_metadata(
|
||||
MYSQL *con = mysql_init(NULL);
|
||||
|
||||
if (!con) {
|
||||
skygw_log_write_flush(NULL, LOGFILE_ERROR,
|
||||
skygw_log_write_flush( LOGFILE_ERROR,
|
||||
(char *)"Mysql init failed", mysql_error(con));
|
||||
return false;
|
||||
}
|
||||
@ -919,7 +919,7 @@ tbrm_write_server_metadata(
|
||||
goto error_exit;
|
||||
}
|
||||
if (tbr_debug) {
|
||||
skygw_log_write_flush(NULL, LOGFILE_TRACE,
|
||||
skygw_log_write_flush( LOGFILE_TRACE,
|
||||
(char *)"TRC Debug: Metadata state updated for %s in server %d is binlog_pos %lu gtid '%s'",
|
||||
dbtable, serverid, binlogpos, gtid);
|
||||
}
|
||||
@ -941,7 +941,7 @@ tbrm_write_server_metadata(
|
||||
}
|
||||
|
||||
if (tbr_debug) {
|
||||
skygw_log_write_flush(NULL, LOGFILE_TRACE,
|
||||
skygw_log_write_flush( LOGFILE_TRACE,
|
||||
(char *)"TRC Debug: Metadata state inserted for %s in server %d is binlog_pos %lu gtid '%s'",
|
||||
dbtable, serverid, binlogpos, gtid);
|
||||
}
|
||||
|
@ -366,7 +366,7 @@ tbr_parser_table_names(
|
||||
name_count++;
|
||||
|
||||
if (tbr_debug) {
|
||||
skygw_log_write_flush(NULL, LOGFILE_TRACE,
|
||||
skygw_log_write_flush( LOGFILE_TRACE,
|
||||
(char *)"TRC Debug: INSERT OR REPLACE to %s.%s",
|
||||
dbname, tbname);
|
||||
}
|
||||
@ -404,7 +404,7 @@ tbr_parser_table_names(
|
||||
name_count++;
|
||||
|
||||
if (tbr_debug) {
|
||||
skygw_log_write_flush(NULL, LOGFILE_TRACE,
|
||||
skygw_log_write_flush( LOGFILE_TRACE,
|
||||
(char *)"TRC Debug: DELETE OR UPDATE to %s.%s",
|
||||
dbname, tbname);
|
||||
}
|
||||
@ -433,7 +433,7 @@ tbr_parser_table_names(
|
||||
name_count++;
|
||||
|
||||
if (tbr_debug) {
|
||||
skygw_log_write_flush(NULL, LOGFILE_TRACE,
|
||||
skygw_log_write_flush( LOGFILE_TRACE,
|
||||
(char *)"TRC Debug: LOAD to %s.%s",
|
||||
dbname, tbname);
|
||||
}
|
||||
@ -480,7 +480,7 @@ tbr_parser_table_names(
|
||||
name_count++;
|
||||
|
||||
if (tbr_debug) {
|
||||
skygw_log_write_flush(NULL, LOGFILE_TRACE,
|
||||
skygw_log_write_flush( LOGFILE_TRACE,
|
||||
(char *)"TRC Debug: DROP TABLE to %s.%s",
|
||||
dbname, tbname);
|
||||
}
|
||||
@ -490,7 +490,7 @@ tbr_parser_table_names(
|
||||
return (false);
|
||||
}
|
||||
}
|
||||
skygw_log_write_flush(NULL, LOGFILE_TRACE,
|
||||
skygw_log_write_flush( LOGFILE_TRACE,
|
||||
(char *)"TRC Debug: CREATE/DROP TABLE to %s.%s",
|
||||
dbname, tbname);
|
||||
}
|
||||
|
@ -85,6 +85,7 @@ struct skygw_file_st {
|
||||
skygw_chk_t sf_chk_top;
|
||||
char* sf_fname;
|
||||
FILE* sf_file;
|
||||
int sf_fd;
|
||||
skygw_chk_t sf_chk_tail;
|
||||
};
|
||||
|
||||
@ -1562,6 +1563,7 @@ bool skygw_file_write(
|
||||
bool flush)
|
||||
{
|
||||
bool succp = FALSE;
|
||||
int err = 0;
|
||||
#if !defined(LAPTOP_TEST)
|
||||
size_t nwritten;
|
||||
int fd;
|
||||
@ -1587,7 +1589,8 @@ bool skygw_file_write(
|
||||
|
||||
if (flush || writecount == FSYNCLIMIT) {
|
||||
fd = fileno(file->sf_file);
|
||||
fsync(fd);
|
||||
err = fflush(file->sf_file);
|
||||
err = fsync(fd);
|
||||
writecount = 0;
|
||||
}
|
||||
#endif
|
||||
@ -1602,6 +1605,7 @@ skygw_file_t* skygw_file_init(
|
||||
|
||||
{
|
||||
skygw_file_t* file;
|
||||
|
||||
file = (skygw_file_t *)calloc(1, sizeof(skygw_file_t));
|
||||
|
||||
if (file == NULL) {
|
||||
@ -1612,8 +1616,10 @@ skygw_file_t* skygw_file_init(
|
||||
file->sf_chk_top = CHK_NUM_FILE;
|
||||
file->sf_chk_tail = CHK_NUM_FILE;
|
||||
file->sf_fname = strdup(fname);
|
||||
file->sf_file = fopen(file->sf_fname, "a");
|
||||
|
||||
file->sf_file = fopen(file->sf_fname, "a");
|
||||
setvbuf(file->sf_file, NULL, _IONBF, 0);
|
||||
|
||||
if (file->sf_file == NULL) {
|
||||
fprintf(stderr, "Opening file %s failed.\n", file->sf_fname);
|
||||
perror("SkyGW file open\n");
|
||||
|
Loading…
x
Reference in New Issue
Block a user