Commit Graph

909 Commits

Author SHA1 Message Date
1742372dd5 Added support for defining a bind address in the listener config.
Also removed some compilation warnings.

See Bugzilla bug 150
2014-02-06 19:04:12 +01:00
7bda588948 "enable_root_user" option available in service configuration example
In MaxScale_template.cnf "enable_root_user" added for valid service
option
2014-02-06 16:24:21 +01:00
e4876b3abb Enable/disable root user in services
Added support for enable/disable root user, this is currently used in
MySQL authentication
2014-02-06 15:58:37 +01:00
1e25d304e7 Add check that the argument to the -c option is a directory. 2014-02-06 13:46:07 +01:00
a91c595dbc Fix for allDCB linked list corruption. 2014-02-06 13:10:11 +01:00
0c4b53e9ef Addition of warnign to the debug command line interface regarding passing
bad arguments.
2014-02-05 15:17:36 +01:00
3edea0afc4 Updated gitignore files 2014-02-05 14:49:05 +01:00
e97ab93966 Tidy up of the exit status based on the issues founf during startup.
See Bugzilla 370.
2014-02-05 12:20:53 +01:00
fa79a121e6 Updated server version added to the prompt and in the log files.
See Bugzilla bug 376.
2014-02-05 11:29:20 +01:00
fb8212543a Fixed issue with MaxScale crash if a configuration unknown section
without a type is added. This is Bgzilla bug 378.
2014-02-05 10:48:52 +01:00
0a13bf9989 Revert previous change to query_classifier.cc, which was triggered due to bug # 391, http://bugs.skysql.com/show_bug.cgi?id=391
Bug was identified by test, but it couldn't be validated. Using RW Split router currently may lead to situation where after setting system variable there is a backend server which doesn't have the value set. This is an incomplete feature at the moment rather than a bug.
2014-01-30 12:51:11 +02:00
89de86320e Added detection for USE <db> (= DATABASE()), which is a system function which changes session variable. Therefore it must be treted as SESION write and executed in both master and slave. 2014-01-29 23:29:32 +02:00
a8c630f581 State transition diagram for Descriptor Control Blocks. 2014-01-28 09:51:06 +02:00
c444bf454b Bug #385 http://bugs.skysql.com/show_bug.cgi?id=385
dcb.c:dcb_write accept also dcb state DCB_STATE_NOPOLLING since it only means that dcb has been removed from epoll set but it is still possible to write to it.

Bug #384 http://bugs.skysql.com/show_bug.cgi?id=384
session.h:added new state for SESSION, SESSION_STATE_ROUTER_READY which follows SESSION_STATE_READY. The difference is that ROUTER_READY is set only after router session is successfully created while READY means that session still lacks router.
session.c:set SESSION_STATE_ROUTER_READY when router is created.
mysql_backend.c:gw_read_backend_event, added SESSION_STATE_ROUTER_READY check before router session is closed. Changed chec kso that it doesn't block in infinite loop (although it shouldn't be possible anyway).
mysql_backend.c:gw_error_backend_event, added similar check before session is closed.
2014-01-27 22:56:33 +02:00
ef90f648a2 mysql_backend.c:gw_read_backend event
If backend authentication fails, wait until session has created router_client_session before reading the session->router_session pointer value. There should only be one case where this situation occurs : when session is being initialized concurrently with authentication. Only consequence is to close router_client_session immediately after session initialization is completed.
2014-01-27 16:54:48 +02:00
aab09ddd16 Add link to the bugs database: bugs.skysql.com 2014-01-20 13:18:59 +00:00
f0e5b56872 Added the Google Group address to the README 2014-01-16 12:51:20 +00:00
d7dce32731 Fixed some typos in README 2014-01-08 17:56:18 +00:00
dfc224c292 New routines for key/value copy and free in hash tables
With the routines for key/value copy and free it is possible to
duplicate or free different data types in the hash tables.

The user_alloc() routine is the first example.
2014-01-08 17:02:59 +01:00
a6dbb20aa9 vi swap file removed 2013-12-23 16:57:09 +01:00
13fdf4ef6b Added checks in gw_mysql_do_authentication() for mysql protocol fileds
Added bytes check in gw_mysql_do_authentication() before proceding with
user,database,token decode
2013-12-23 16:55:38 +01:00
999258be6e strncpy for username and database in gw_mysql_do_authentication.
strncpy for username and database in gw_mysql_do_authentication()

Empty username forces return
2013-12-23 15:08:58 +01:00
8314773e9b Addition of init.d script 2013-12-20 14:28:36 +00:00
d754fa9822 Created .gitignore from .bzrignore 2013-12-17 18:12:09 +00:00
13739eae44 Removed a failed auth message on stderr 2013-12-17 18:24:26 +01:00
05d365e4b4 fprintf(9 removed 2013-12-17 11:07:29 +01:00
b2f6d5494e LD_LIBRARY_PATH instruction for MaxScale libs 2013-12-16 19:11:55 +01:00
1444e9bee5 MAXSCALE_HOME and startup from bin folder 2013-12-16 18:43:58 +01:00
46faa513c1 Licence and copyright fils 2013-12-16 17:20:50 +00:00
055e1af2b6 Update of SETUP documentation 2013-12-16 17:04:01 +00:00
b1d7f8da8d SETUP contais the instruction for launch MaxScale properly 2013-12-16 17:36:59 +01:00
8e75ef5cfa Updated documentation 2013-12-16 16:31:17 +00:00
4028886020 Updated configuration documentation 2013-12-16 15:48:04 +00:00
f3f7dc6dd8 Updated README file. 2013-12-16 14:06:03 +00:00
9646df0cc4 Added details for external packages/libraries needed for compiling MaxScale 2013-12-16 13:41:42 +01:00
0e4b8b8b56 Added instructions for missing embedded_priv.h header file 2013-12-16 13:30:01 +01:00
fca454fbde The README file has been modified with the new compile instructions:
- MariaDB RPMS
- Existing MariaDB setup
- errmsg.sys file requirements
- static or dynamic embedded mariadb library
2013-12-16 11:20:24 +01:00
b6c907eef1 In gw_read_client_event() there is a new method detecting closed client sockets:
if ioctl() return 0 bytes, recv(..., MSG_PEEK) is called, reading 1 byte.

if recv returns 0 or -1 the socket is closed and dcb->func.close(dcb) is called.

Client, session and backend connections will be closed


Tested with 4 MaxScale running threads
2013-12-16 09:35:00 +01:00
058d0f4492 Modified comments to be compatible with doxygen 2013-12-13 19:32:10 +02:00
97bc1ed042 Fixed comments to be compatible with doxygen 2013-12-13 19:11:10 +02:00
d700754baa log_manager.cc
Bug #372, http://bugs.skysql.com/show_bug.cgi?id=372
	Do not exceed the buffer capacity in log writing. Now longer strings are cut to fit to the buffer.
2013-12-13 15:21:48 +02:00
4ce4423b3e Made comments doxygen compatible. 2013-12-13 10:52:34 +02:00
d403018fd9 Surrounded every log writing command with LOGIF macro, which tests if the given logfile id matches with those enabled. The comparison is done against local variable and expensive function call is avoided. 2013-12-12 16:14:33 +02:00
272ca036e4 log_manager.h
Added macros which allow for testing locally if log is enabled or not.

server/Makefile
	Added directory creation command to Makefile. This fixes problem where errmsg.sys was copied to MaxScale/mysql instead of MaxScale/mysql/errmsg.sys

dcb.b
	Added external variable which carries the information of enabled logs from log_manager.cc

gateway.c
	Tuned logging.
2013-12-12 07:05:38 +02:00
06ebc6f4b5 Added QUERY_TYPE_GLOBAL_WRITE for writes which don't reflect on binary log, but need to be present in every back-end server once executed. 2013-12-11 14:34:01 +02:00
f785420cc6 Double freeing memory. 2013-12-10 17:27:45 +02:00
a016a4aa96 server/core/Makefile
Added librt (-lrt), required for building MaxScale with static libmysqld in some platforms (CentOS 6)
2013-12-10 10:23:35 +01:00
a673fc9c48 Read-write split router doesn't handle QUERY_TYPE_SESSION_WRITE in any special way. Behavior defaults to same as in the case of QUERY_TYPE_WRITE. That is, modification is executed in master only. 2013-12-09 15:30:47 +02:00
10eafd61bc Added more information to error message in case where mysql_error provides wrong error message. 2013-12-09 13:35:45 +02:00
1c55a4cee7 Added a hint for the user in case the libmysqld fails to init. 2013-12-09 11:58:06 +02:00