Commit Graph

6516 Commits

Author SHA1 Message Date
9a11a3241b UNIX socket support
UNIX socket support
2014-03-11 13:00:34 +01:00
c28892323a Added support for session commands to readwrite split router.
Added support for multi-statement packets.

This is an intermediate commit to save work. Code is not cleaned and there are debug prints and prototypes to be removed.
2014-03-07 20:53:33 +02:00
4f60625a54 Server connection counter is updated in closeSession
Server connection counter is updated in closeSession
2014-03-06 08:45:51 +01:00
0a0463c42c Fix for bug-406
Fix for bug-406 in dcb_alloc()
2014-03-03 17:54:39 +01:00
c6cfc99ee3 At service startup service->rate_limit.last is set back to USERS_REFRESH_TIME
At service startup service->rate_limit.last is set back to
USERS_REFRESH_TIME
This allows reloading users’ table as soon as possible

Fixed mysql_users_alloc instead of users_alloc in replace_mysql_users()
and added MYSQL_USER_MAXLEN where missing
2014-02-28 18:26:24 +01:00
92d94e16ac Removed duplicated code
Removed duplicated code
2014-02-28 17:55:57 +01:00
bc31ac2ed3 Branch updated from develop
Branch updated from develop
2014-02-28 17:36:48 +01:00
1f533c64ff Files updated for user@host mysql auth
Files updated for user@host mysql auth
2014-02-28 15:47:11 +01:00
22947109b4 Removed extra header file inclusion
Removed extra header file inclusion
2014-02-28 15:07:01 +01:00
a2285e9e00 Compile errors fixed
Compile errors fixed
2014-02-28 12:56:09 +01:00
45543eceed Merge branch 'fix-127' into feature-MAX-2
Conflicts:
server/core/dbusers.c
server/core/service.c
server/core/users.c
server/include/dbusers.h
server/include/users.h
server/modules/protocol/mysql_client.c
server/modules/protocol/mysql_common.c
2014-02-28 12:28:14 +01:00
78799e505f Fix for bug 127 and 345 as part of it
Fix for bug 127 and 345 as part of it
http://bugs.skysql.com/show_bug.cgi?id=127
http://bugs.skysql.com/show_bug.cgi?id=345
2014-02-28 11:29:55 +01:00
3e111534a1 Support for mysql session variable commands, for example, SET AUTOCOMMIT=0
Session commands are identified by query clasisfier, and added to the session command property list in router client session object.
Session commands are then executed in existing backend servers but only one of them will reply to client.
2014-02-26 20:07:09 +02:00
a2c9437385 Merge branch 'feature-MAX-2' into develop 2014-02-21 17:12:30 +01:00
17b328cb9a Added USERS_HASHTABLE_SIZE
Added USERS_HASHTABLE_SIZE,  default size is 52
2014-02-21 17:08:27 +01:00
6a67bfd713 Merge "Traffic is routed to the master if no slaves available". Fix bug-129 2014-02-21 12:32:54 +01:00
9ebf3c3237 Merge "Traffic is routed to the master if no slaves available". Fix bug-129 2014-02-21 12:30:39 +01:00
0e8f29d62a Merge for Fix MySQL 5.1 server handshake 2014-02-21 11:10:14 +01:00
3bb0d650f8 Fix for MySQL 5.1 server handshake
Fix for MySQL 5.1 server handshake
2014-02-21 09:55:41 +01:00
ec7d748275 Code clean up and removed text typos in comments
Code clean up and removed text typos in comments
2014-02-20 16:28:54 +01:00
fa14dceb4b Traffic is routed to the master if no slaves available
Traffic is routed to the master if no slaves available, this applies
for router_options=slave in config file
2014-02-20 13:26:16 +01:00
8d0f893bb8 Added test file for mysql authentication (user@host, passwd)
Added test file for mysql authentication (user@host, passwd)

make -f ./makefile.mysql_users testall
2014-02-17 16:22:52 +01:00
e8d68d7271 Added localhost check in gw_find_mysql_user_password_sha()
Added localhost check in gw_find_mysql_user_password_sha1().
The wilcard check is skipped if user@localhost failed
2014-02-17 10:17:22 +01:00
7ecea7ae7d set dcb->ipv4 for mysql user@host authentication
set dcb->ipv4 for mysql user@host authentication
2014-02-14 18:37:04 +01:00
086399bb20 uh_cmpfun: resolved error in NULL check
uh_cmpfun: resolved error in NULL check
2014-02-14 18:00:19 +01:00
9b6ad904f6 MySQL authentication with user@host, resolved compile errors
MySQL authentication with user@host, resolved compile errors
2014-02-14 17:27:17 +01:00
6a12e99001 MySQL authentication with user@host
MySQL authentication with user@host: user, host and pass word are
loaded from backend servers.
Host is currently handled as IPv4 address
2014-02-14 15:56:48 +01:00
badb2e3f2c Added return code to setipaddress and removed fprintfs
Added return code to setipaddress and removed fprintfs
2014-02-14 12:27:33 +01:00
93fc31d9d9 enable_root_user option added to service_params list
enable_root_user option added to service_params list
2014-02-14 11:39:21 +01:00
5fd5aab2be Added checks for possible handle hashtable_add() failure
Added checks for possible handle hashtable_add() failure with key,
value and copyfn
2014-02-14 10:49:06 +01:00
b673108276 Bug # 403 http://bugs.skysql.com/show_bug.cgi?id=403
Comparing the return value of atomic_add instead of buffer's reference count variable.
2014-02-12 18:55:44 +02:00
cb20f8ab8d Initialized argument pointer values with zeroes in hashtable_get_stats. 2014-02-11 15:22:52 +02:00
83bdc15b54 Made a quick fix to server/core/test/testhash.c. In makefile there is one call for multiple tests and so it makes sense to check return value of the test program. 2014-02-11 14:57:27 +02:00
ab6469f2ae Added debug print to place where changing DCB state fails. 2014-02-10 23:21:03 +02:00
4150b124a4 Bug # 397
http://bugs.skysql.com/show_bug.cgi?id=397

Avoid calling free with NULL pointer.
2014-02-07 12:47:07 +02:00
75af5ee03c Merge https://github.com/skysql/MaxScale 2014-02-07 11:11:47 +02:00
e8ce2268e0 Test system for MaxScale.
Every test/makefile have the following targets:
 cleantests 	- clean local and subdirectories' tests
 buildtests	- build all local and subdirectories' tests
 runtests	- run all local tests
 testall	- clean, build and run local and subdirectories' tests

Tests for directory random_dir are always in its subdirectory, in this case in random_dir/test . If random_dir has subdirectories with tests, random_dir/child_dir, for example, tests of child_dir can be started from random_dir/test/makefile where make -C child_dir/test <test target> is called.

See MAXSCALE_HOME/test/README for further information.
2014-02-07 11:06:37 +02:00
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
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
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