Commit Graph

53 Commits

Author SHA1 Message Date
9025f7a1be Fprintf removed 2013-07-17 18:05:57 +02:00
50068f4c97 mysql_client_server_protocol.h in included in readconnroute.c
mysql_client_server_protocol.h now has defines for basic mysql commands and mysql packect related macros
2013-07-17 16:12:53 +02:00
9a3dd78926 Addition of reload commands in the debug CLI for users and configuration
Fixed bug in reload configuration
2013-07-17 16:06:08 +02:00
02e60e215b Name change to MaxScale rather than gateway
Addition of code for dynamic reconfiguration by editign the cnf file and sendign a SIGHUP

Improvements to the make install rule
2013-07-17 13:32:04 +02:00
b6cbe3a34c ReadConnRoute can handle now COM_CHANGE_USER
mysql_backend calls routeReply with backand results.

routeReply in readwritesplit.c can understand the dcb->command value
2013-07-17 10:39:08 +02:00
e0d9d45f3b Read write split router can reply the master packet to client in session change.
Mysql backend handles auth and session func.


The MYSQL_SESSION_CHANGE may be not in sync with authentication
2013-07-15 18:56:14 +02:00
45c28a033e Added support form COM_CHANGE_USER in readwritesplit.c
Added func.auth() and func.generic() in dcb.h

Some mysql routines moved into mysql_common.c


New session user still not saved in the dcb->data
2013-07-15 09:03:51 +02:00
fa8ea19f85 Addition of banner in debugcli and fix to red write splitting for session write statements 2013-07-12 10:31:24 +02:00
619af90696 Implementation of shared buffer level in the gwbuf so that one set of data can be kept with
different offsets for different gwbufs

Updated monitor to better handle maste/slave replication environments

Split MASTER and SERVER bits in the erver bitmask so that we canhave more states, MASTER, SLAVE and NOT IN REPLICATION

Updates to the read write splitter for routing commands to all nodes, diagnostic output and fixes to the algorithm to pick up a master and slave connection
2013-07-11 18:37:43 +02:00
aea8af08ba Fixes to enable multiple gateways to be run on the same machine.
A temporary directory is used for the data directory, incorporating the pid
in the directory name. If set then the data directory will be stored in $GATEWAY_HOME,
if not it will be placed in /tmp

If $GATEWAY_HOME is set then the log files will be written to $GATEWAY_HOME/log
2013-07-11 13:02:13 +02:00
8221e75fa7 First version of read write split router. Memory is leaked but it seems that its happening in connection handling somewhere. 2013-07-10 12:31:52 +03:00
7e1840b609 Renamed router to readwritesplit 2013-07-10 11:30:58 +03:00
443e709227 Added libmysqld support to mysql_mon.c, removed comment from router.c 2013-07-09 14:24:00 +03:00
e6b72a1900 Added - rm *.so to clean to avoid accidentally use old libraries that were just lying around. 2013-07-09 12:33:25 +03:00
02ad5fad57 Removed references to libmysqlclient, and replaced them with those of libmysqld since, in addition to query parsing feature, libmysqld provides external connectivity. 2013-07-09 09:40:25 +03:00
ee9ce70e7b Added inclusion of makefile.inc to get necessary debug flags for compiler 2013-07-08 11:15:11 +03:00
b069a16de7 Added including of makefile.inc debug flags for compiler. 2013-07-08 11:13:59 +03:00
a9b2f199b6 Added renaming of conflicting mysql library functions. 2013-07-08 11:13:04 +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
57bfad1c8a Allocated log messsage fro heap instead of stack. 2013-06-28 10:36:21 +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
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
ce8de5a5e4 Fixed makefile rules for make depend so that it will always run 2013-06-27 12:44:45 +02:00
3b8ebfd215 Misc fixes for unitialised data reads 2013-06-27 01:56:30 +02:00
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
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
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
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
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
0792801996 Addition of hash table statisics commands 2013-06-25 18:20:00 +02:00
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
0227c4afff Added error return in readroute when backend connection fails 2013-06-25 10:38:24 +02:00
f4c1b298d6 Fixes for close and cleanup of sessions, dcb, router sessions etc.
Fix memory leak in config

Fix for debug command execution without second argument
2013-06-24 16:43:17 +02:00
2ec19bf7ca Fix to the hashtable support
Renamed alloc_dcb, free_dcb and connect_dcb to be more consistant, e.g. dcb_alloc, dcb_free and dcb_connect
2013-06-24 15:09:37 +02:00
dcc6071ddd Fixed bug in for(), newSession 2013-06-21 16:28:53 +02:00
237a311dda In newSession (readconnroute.c) connect_dcb will create backend connection via backend_dcb->func.connect()
session_alloc will not start a newSession for the LISTENING socket

In dcb.h void *data was added to keep protocol session data if the session is not started in accept(9 but later.
2013-06-20 19:06:16 +02:00
088b3473bc Improved to diagnostic routines and documentation for the debug cli interpreter 2013-06-20 15:03:55 +02:00
e55631e60f Improved debug CLI command interpreter to allow for commands with arguments 2013-06-20 13:21:37 +02:00
fc852eaada Changed readconnroute backend structure to simply maintain a pointer to the server rather than
include the hostname and port in the backend structure

Fix to makefile for routing modules
2013-06-20 10:18:14 +02:00
39c8695819 Misc fixes 2013-06-19 18:46:24 +02:00
0fc2f9dda3 Removed the passing of epoll fd and isolated epoll functionality to
a signle file

Addition of show epoll debug CLI command
2013-06-19 16:29:52 +02:00
c2b24884fd Updates for the debug cli interface 2013-06-19 13:21:37 +02:00
53b6bc0a25 A number of updates to do with service startup
Telnet protocol support

Debug cli
2013-06-19 12:31:40 +02:00
ec688e6222 Addition of the service, server, serv_protocol and session structure needed to tie the elements together.
Improvements to the protocol module support

Documentation improvements

Addition of make install target
2013-06-18 16:59:01 +02:00
6afc2e432b Addition of -Wall to CFLAGS
Cleanup warnings produced by above with the exception of those files requiring reorganisation
2013-06-17 14:25:32 +02:00
1300c5d089 Addition of dependencies to the makefile
New make target of "make depend"
Addition of doxygen building ability
Cleanup of docygen comment blocks
Initial telnetd protocol module structure
2013-06-17 14:03:05 +02:00
cc448f4bb9 Updated testroute after modification to entry point definition 2013-06-14 18:28:34 +02:00