Commit Graph

573 Commits

Author SHA1 Message Date
e8ee2a3e9b Removed useless code from mysql_backend.c and mysql_common.c 2013-07-04 15:19:52 +02:00
4adf121de9 Now the MySQL connect phase is fully asynchronous
EINPROGRESS will set the MYSQL_PENDING_CONNECT protocol state
2013-07-04 12:43:16 +02:00
2cb2a60a96 2 routines added 2013-07-04 12:37:00 +02:00
272f7d8685 Added comments and revision history update 2013-07-04 12:08:09 +02:00
b549ad1676 Changed value for MYSQL_PENDING_CONNECT and MYSQL_CONNECTED 2013-07-04 11:48:03 +02:00
7a8b65aa0a Added MYSQL_PENDING_CONNECT for handling EAGAIN status in connect.
MYSQL_FAILED_AUTHENTICATION and MYSQL_SUCCESFUL_AUTHENTICATION are for backend server auth reply
2013-07-04 11:18:02 +02:00
15213f3680 Delete unnecessary files 2013-07-04 09:29:46 +03:00
099af601bf Added support for MySQL GTID event 2013-07-04 09:27:57 +03:00
560164025a Added target 'links' which creates soft links to modules/libraries needed by gateway. Mostly for ad hoc testing. 2013-07-03 19:43:14 +03:00
b4f5889a3a Fix in poll.c to prevent further processing when an error makes a DCBV into a zombie
Fix in laod_config for issues when not being able to load router modules
2013-07-03 18:15:02 +02:00
ad87126c16 Added support for delay queue and authlock 2013-07-03 18:10:10 +02:00
189b9e64e6 Remove unnecessary files 2013-07-03 11:43:39 +03:00
c363b83930 Fixed problems on connecting and authenticating to Oracle MySQL server. Fixed error on server type logic. 2013-07-03 11:42:12 +03:00
77c759ac33 New version of mysql async connect: preparing for the new connect() 2013-07-03 10:01:35 +02:00
903b906044 Added the backend delayq: this will assure incoming data are queued before mysql backend connection is complete
After connection data will be written to backend
2013-07-03 09:34:22 +02:00
bce2573c21 Fixed bug which tried to access list without mutex. 2013-07-02 18:04:00 +03:00
24079799fa MySQL connect async routines use read/write from/to socket instead of dcb 2013-07-02 16:51:10 +02:00
6abd9dbdaa Added profile counters: writebuffer init, done, total and recycle counts. 2013-07-02 16:53:23 +03:00
cd692bc020 gw_write_backend_event and gw_MySQLWrite_backend modified 2013-07-02 14:41:36 +02:00
c2be579cae Merge 2013-07-02 15:16:51 +03:00
d11741130d Changed log manager API to support variable length formatted log strings. New API is as follows:
/** No change in these */
bool skygw_logmanager_init(void** buf, int argc, char* argv[]);
void skygw_logmanager_done(void** buf);
void skygw_logmanager_exit(void);
int  skygw_log_flush(logfile_id_t id);

/** writebuf remains unused, but formatted string is now possible and in case 
 * of formatted string, arbitrary long argument list is supported too. Max 
 * length for a log string is defined to BUFSIZ, whose value depends on the 
 * system but typically is 4/8KB.
 */
int  skygw_log_write(void* writebuf, logfile_id_t id, char* format, ...);
int  skygw_log_write_flush(void* writebuf, logfile_id_t id, char* format, ...);

makefile.inc includes new CFLAG : SS_PROF, which is set if PROF=Y on make command line or in build_gateway.inc .
ss_debug.h includes corresponding ss_prof(exp) macro which equals to exp if SS_PROF is defined and to empty if in other case.

mlist_t now includes datadel function which is a callback and it is executed for mlnode_data on node exit.
2013-07-02 14:46:39 +03:00
e64a141134 Added very simple parser for table replication listener for statement based replication. 2013-07-02 14:11:26 +03:00
9ca66dccf1 Test 2013-07-02 07:11:43 +03:00
471b3cbaf2 Fixed bug on memory allocation for string types and fixed linker problem on example main program 2013-07-02 07:09:44 +03:00
6b8ab60628 Added strdup in log_manager call 2013-07-01 17:59:10 +02:00
5408ec1a93 Added SS_DEBUG for logmanager 2013-07-01 17:58:32 +02:00
e3f08e392b Comment modified in gw_MySQLWrite_backend 2013-07-01 17:44:39 +02:00
b33b3753dc Removed session->backends
Added dcb->fd in some fprintf debug
2013-07-01 17:00:24 +02:00
ecf498448c Removed useless code under comments 2013-07-01 16:21:28 +02:00
6f32637315 New functions added in mysql_common for full asysncronous mysql connect
The new funcs are not yet used in the public repo
2013-07-01 14:34:47 +02:00
0457505721 Added DCB_STATE_CONNECT fro backe d connect status
Added gw_decode_mysql_server_handshake() in mysql_common.c
2013-07-01 11:37:26 +02:00
b51232c518 Fixed issues on linking and namespaces. Added example 2013-07-01 12:19:02 +03:00
5a4ae09c51 Merge 2013-06-29 00:22:32 +03:00
2bce5415dc Removed libraries and headers referred to Query classifier because Qc is not needed in gateway and gateway needs MySQL Client library functions which can connect to remote server. 2013-06-29 00:15:58 +03:00
8257eadf12 Addition of an arbitary bitmask handling set of functions
New memory deallocation routines for the DCBS
2013-06-28 17:39:43 +02:00
3e8b19733e Added example code to router.c ModuleInit and to its Makefile. Put example codes behind SS_DEBUG macros. SS_DEBUG compile flag is defined in Makefile if DEBUG is set in build_makefile.inc, or in command line - 'make DEBUG=Y ', for example. 2013-06-28 15:27:02 +03:00
a3edff47b0 Added necessary headers and example functions and calls to gateway.c. Added necessary libs, and path definitions to Makefile so that query classifier-related headers and libs can be founded. Commented out mysql client -related stuff from Makefile to avoid conflicts. 2013-06-28 12:24:53 +03:00
c0261fd627 Changed at exit function to void skygw_logmanager_exit(void) 2013-06-28 11:39:54 +03:00
1888b8a517 Prevented redefinition of bool, added function void skygw_logmanager_exit(void) to be called by atexit 2013-06-28 11:39:00 +03:00
57bfad1c8a Allocated log messsage fro heap instead of stack. 2013-06-28 10:36:21 +03:00
89a744c8e5 Removed double typedef 2013-06-28 10:23:30 +03:00
1b764eba74 Little fixes 2013-06-27 23:33:20 +03:00
fd52e967db I hope that I don't break anything. Did some changes to Makefiles and sources so that liblog_manager.so can be linked-in and used. 2013-06-27 23:28:13 +03:00
3af4089c87 Modified Makefiles so that liblog_manager.so can be linked in in compilation of core/gateway.c modules/protocol/mysql_backend.c and in modules/routing readconnroute.c.
Modified source files by adding a few logging commands (skygw_log_write) to them, and by adding includes of necessary header files.
2013-06-27 23:14:33 +03:00
33632968a8 Fixed typo which failed DEBUG=Y compilation 2013-06-27 17:41:06 +03:00
b26315cf24 Can't compile product version. 2013-06-27 16:54:54 +03:00
5c271e1925 Fixed clean-up processes in cases where initialization fails arbitrarily in the middle of startup. Added four descriptive states : UNINIT, INIT, RUN, DONE for flat stucts inside logmanager. Flat structs always have the state which tells what needs to be fred, if any. 2013-06-27 16:43:01 +03:00
17449b66d5 Addition of the structure for the read write query splitter routing module. This is
in a seperate directory to the others as it is likely to be a complex routing module.
2013-06-27 13:30:07 +02:00
2ffe34d6d2 Updates to documentation
Switch polling mechanism back to the non-debug version
2013-06-27 13:09:21 +02:00
cfe01d0940 Removed commented code 2013-06-27 12:54:58 +02:00