83 Commits

Author SHA1 Message Date
Massimiliano Pinto
740a001d01 moved mysql_send_custom_error to mysql_common.c
The failed backend auth now forces the closeSession and also sets thre router session = NULL

This will be changed introducing another state in the session struct
2013-07-05 09:38:52 +02:00
Massimiliano Pinto
e8ee2a3e9b Removed useless code from mysql_backend.c and mysql_common.c 2013-07-04 15:19:52 +02:00
Massimiliano Pinto
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
Massimiliano Pinto
2cb2a60a96 2 routines added 2013-07-04 12:37:00 +02:00
Massimiliano Pinto
272f7d8685 Added comments and revision history update 2013-07-04 12:08:09 +02:00
Massimiliano Pinto
b549ad1676 Changed value for MYSQL_PENDING_CONNECT and MYSQL_CONNECTED 2013-07-04 11:48:03 +02:00
Massimiliano Pinto
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
Massimiliano Pinto
77c759ac33 New version of mysql async connect: preparing for the new connect() 2013-07-03 10:01:35 +02:00
Massimiliano Pinto
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
Massimiliano Pinto
24079799fa MySQL connect async routines use read/write from/to socket instead of dcb 2013-07-02 16:51:10 +02:00
Massimiliano Pinto
cd692bc020 gw_write_backend_event and gw_MySQLWrite_backend modified 2013-07-02 14:41:36 +02:00
Massimiliano Pinto
6b8ab60628 Added strdup in log_manager call 2013-07-01 17:59:10 +02:00
Massimiliano Pinto
5408ec1a93 Added SS_DEBUG for logmanager 2013-07-01 17:58:32 +02:00
Massimiliano Pinto
e3f08e392b Comment modified in gw_MySQLWrite_backend 2013-07-01 17:44:39 +02:00
Massimiliano Pinto
b33b3753dc Removed session->backends
Added dcb->fd in some fprintf debug
2013-07-01 17:00:24 +02:00
Massimiliano Pinto
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
Massimiliano Pinto
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
Mark Riddoch
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
vraatikka
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
vraatikka
57bfad1c8a Allocated log messsage fro heap instead of stack. 2013-06-28 10:36:21 +03:00
vraatikka
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
vraatikka
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
Mark Riddoch
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
Mark Riddoch
2ffe34d6d2 Updates to documentation
Switch polling mechanism back to the non-debug version
2013-06-27 13:09:21 +02:00
Massimiliano Pinto
cfe01d0940 Removed commented code 2013-06-27 12:54:58 +02:00
Mark Riddoch
ce8de5a5e4 Fixed makefile rules for make depend so that it will always run 2013-06-27 12:44:45 +02:00
Mark Riddoch
c48b2477e3 Add missing hangup entry point 2013-06-27 12:36:11 +02:00
Massimiliano Pinto
d965b991e6 Fixed the server_capabilities and final_capabilities initialization 2013-06-27 12:09:28 +02:00
Mark Riddoch
99465dd6b7 Move sending of the OK on client side authentication to the EPOLLIN event processing routine
Addition of a compile switch to make epoll block rather than timeout, useful only for debugging
2013-06-27 09:28:34 +02:00
Mark Riddoch
3b8ebfd215 Misc fixes for unitialised data reads 2013-06-27 01:56:30 +02:00
Massimiliano Pinto
c1981b4dc6 Removed othere fprintf 2013-06-27 00:38:55 +02:00
Massimiliano Pinto
60c4ef45be Removed a fprintf with a uint8_t pointer that is not NULL terminated 2013-06-27 00:22:21 +02:00
Massimiliano Pinto
f2455467ad Added same size for buffer in read and write to backend socket 2013-06-26 23:29:26 +02:00
Massimiliano Pinto
e3b5adad4a Unused vars removed, cating issues fixed and an error in authentication without passord is now fixed 2013-06-26 15:39:20 +02:00
Massimiliano Pinto
fdc2b90de6 Some unused vars removed 2013-06-26 15:10:53 +02:00
Massimiliano Pinto
d80c86cf49 MySQLListener return 1 on success 2013-06-26 15:05:10 +02:00
Mark Riddoch
c3f70c863e Addition of routing module diagnostics and options
readconnroute now support the options slave and master to restrict the set of
servers it will connect to
2013-06-26 14:04:56 +02:00
Massimiliano Pinto
031b6e4978 New version with all warning fixed 2013-06-26 12:33:47 +02:00
Massimiliano Pinto
462f34c2ca Fixed some compile warnings 2013-06-26 12:18:48 +02:00
Massimiliano Pinto
3fb7307ade Fixed compile warnings 2013-06-26 12:13:04 +02:00
Massimiliano Pinto
243c4870e7 Reverted versions 2013-06-26 12:07:38 +02:00
Massimiliano Pinto
d5590c6d0e Removed unused vars and fixed warnings, mysql_backend.c is still missing 2013-06-26 10:27:25 +02:00
Mark Riddoch
1595725494 Improved some code documentation
Added the -Wall option to the protocol module Makefile

Fixed warnings in telnetd
2013-06-26 09:31:46 +02:00
Mark Riddoch
9e2a41c2b7 Added code to correctly identify the initial candidate for load balancing,
taking into account the status of the candidate.

Also made the balancing such that if two servers have the same number of
current connections the one that has had least connections since startup
will be used.
2013-06-26 09:10:31 +02:00
Mark Riddoch
c7a424cdab Addition of server macros to determine server state
Addition of rule in readconnroute to take server state into account

Addition of "current connections" statistic in the server
2013-06-26 00:58:58 +02:00
Mark Riddoch
3338e9cdb0 Addition of argument types to the debug cli
Added commands to settign and clearign status bits in the servers
2013-06-25 20:15:57 +02:00
Mark Riddoch
0792801996 Addition of hash table statisics commands 2013-06-25 18:20:00 +02:00
Massimiliano Pinto
57e3b80aad Removed useless session initialize 2013-06-25 17:34:27 +02:00
Massimiliano Pinto
b0c193c160 Authentication funcs changed:
support for user without password.


Some better documentation in gw_mysql_connect.
2013-06-25 16:39:07 +02:00
Mark Riddoch
34fdbdb34d Addition for shutdown mechanism for the gateway
Addition of stop and restart service

Fix for telnetd in Makefile

Fix for printing the server names in services
2013-06-25 14:00:18 +02:00