Commit Graph

6516 Commits

Author SHA1 Message Date
9fe7a83675 Fixes for resource leaks foudn with Coverity.
Bug 173, 174, 175, 176 and 177
2013-08-21 17:26:55 +02:00
2135a76f7b Bug 172 - Compile errors in Galera Monitor 2013-08-21 17:25:43 +02:00
1a18632920 Move fprintf to log 2013-08-21 16:35:01 +02:00
4e41fc49f5 Bug 166 - NULL pointer dereferenced if candidate server is NULL 2013-08-21 12:08:41 +02:00
2499378af9 Bug 160 - fixed freeing of username 2013-08-21 12:06:31 +02:00
73ffa5a648 dcb->data is allocated before poll_add_dcb in httpd_accept()
This will prevent dcb->data to be NULL with threads
2013-08-20 11:37:57 +02:00
21dabda848 Removed redundant log writings. 2013-08-20 10:49:35 +03:00
2ad0b12d79 Check dcb->status and set new state with writeqlock on. 2013-08-19 19:41:47 +03:00
c5ed473ab7 Check return value of ioctl in dcb_read and act accordingly. 2013-08-19 19:40:51 +03:00
ea79b38e4f Check return value of dcb_read and if it failed, don't access head of linked list. 2013-08-19 19:39:47 +03:00
d6432b1750 Merge 2013-08-19 17:10:33 +03:00
45ea459e20 Check the return value of ioctl in dcb_read. 2013-08-19 17:09:33 +03:00
0021eddfee Bug 154 - Added warning if options are set for the read/write splitter and updated example config file. 2013-08-19 15:53:08 +02:00
f750b8545a Merge 2013-08-19 16:40:44 +03:00
c119f7b7b8 In dcb_close read and set dcb->state by holding dcb->writeqlock. This prevents simultaneous calls to closeSession. 2013-08-19 16:38:55 +03:00
b1c398e944 Bug 145 - Silently ignore missing .secrets file 2013-08-19 15:36:26 +02:00
05a3978442 Modified gw_read_client_event so that it only calls mysql_send_ok after new sessions has been set up and initialized. 2013-08-19 13:02:04 +03:00
24367fb400 Removed dcb->mutex since it didn't solve any problem. 2013-08-19 13:01:07 +03:00
97b3da1d79 Added simple_mutex_t dcb->mutex to DCB struct to protect processing of single dcb in poll.c:poll_waitevents. This is a coarse locking but seems to work with multiple threads at least with very simple load.
Added trace logging to many locations.
2013-08-16 23:52:10 +03:00
7c0ed171a0 Added trace log to event handling. 2013-08-15 22:45:11 +03:00
a1b05359ac Added trace log where epoll_wait returns and to where read fomr/write to socket decicion is made. 2013-08-15 20:16:23 +03:00
90e6e11923 Added debug trace to socket read. 2013-08-15 11:13:34 +03:00
bed0206895 If config file is specified in command-line argument, then it won't be searched from anywhere else. Earlier command-line argument was ignored if MAXSCALE_HOME was set. 2013-08-14 15:42:35 +03:00
4051796653 Merge 2013-08-14 11:27:14 +03:00
eba81f0501 Corrected comparison between strcmp and 0 so that threads configuration parameter value becomes effective. 2013-08-14 11:25:03 +03:00
fbc311730c Bug 124: Add log message when an invalid router option is supplied 2013-08-13 15:14:32 +02:00
2e11a26f41 Fixed bug on candidate selection. I misinterpreted count and n_connections variables. Thus, renamed count as current_connection_count to make it more understandable. 2013-08-13 12:12:19 +03:00
c1c8bf9fc5 Removed unnecessary loop of servers. Now we loop over all the servers, if running server is found and candidate is not set we set that server as candidate. If candidate is set and we find any that have fewer connections than our candidate server. If a server has less connections than the current candidate we mark this as the new candidate to connect to. If a server has the same number of connections currently as the candidate and has had less connections over time than the candidate it will also become the new candidate. This has the effect of spreading the connections over different servers during periods of very low load. 2013-08-13 11:55:34 +03:00
2d31d9ff5b Initialized addr length indicator in telnetd_accept 2013-08-12 21:06:44 +03:00
249413b2c6 Freed thread structs. 2013-08-12 21:05:44 +03:00
c5fd94590c Freed hashtable iterator to dcb_usersPrint. 2013-08-12 21:04:31 +03:00
64cb6eca56 mysql_library_end is not called if it wasn't initialized properly. 2013-08-12 13:12:23 +03:00
0c5125a44d Typos 2013-08-12 13:11:05 +03:00
7522eb617d Added enable/disable commands, now for log_witer only 2013-08-09 15:12:23 +02:00
6c106bb9be Removed #if defined(SS_DEBUG) macros around trace log print commands. Trace log is disabled by default but it is meant to be possible to enable it with other than debug build only. 2013-08-09 15:27:02 +03:00
8a9d178785 Fixed bug for invalid memory access in row[1]+1 when row[1] is "" 2013-08-08 18:40:02 +02:00
1ab8420e91 Added an example to user command : help show dbusers and removed erroneous complain about unknown subcommand if show dbusers is called without arguments. 2013-08-08 15:46:33 +03:00
d94153c29f If maxscale is compiled with DEBUG=Y readconnrouter module writes slave selection info to trace log. Example:
SkySQL MaxScale Thu Aug  8 00:01:08 2013
------------------------------------------
2013 08/08 00:01:17  Selected server in port 3003 to as candidate. Connections : 0 
2013 08/08 00:01:17  Examine server in port 3002 with 0 connections. Status is 5, inst->bitvalue is 6
2013 08/08 00:01:17  Examine server in port 3001 with 0 connections. Status is 5, inst->bitvalue is 6
2013 08/08 00:01:17  Examine server in port 3000 with 0 connections. Status is 3, inst->bitvalue is 6
2013 08/08 00:01:17  Final selection is server in port 3003. Connections : 1 
2013 08/08 00:01:22  Selected server in port 3003 to as candidate. Connections : 1 
2013 08/08 00:01:22  Examine server in port 3002 with 0 connections. Status is 5, inst->bitvalue is 6
2013 08/08 00:01:22  Examine server in port 3001 with 0 connections. Status is 5, inst->bitvalue is 6
2013 08/08 00:01:22  Examine server in port 3000 with 0 connections. Status is 3, inst->bitvalue is 6
2013 08/08 00:01:22  Final selection is server in port 3002. Connections : 1
2013-08-08 00:10:33 +03:00
f1498e4403 Added log flusher thread, which flushes once per second. 2013-08-08 00:08:45 +03:00
a447583214 If MaxScale.cnf exists, install takes a backup of it before overwriting it with version from maxscale/server. 2013-08-08 00:06:38 +03:00
75e7de182f fprintf debug for added backend connection is protected by if (backend->fd > 0) 2013-08-07 09:39:29 +02:00
8449482279 Fixed typo 2013-08-06 10:55:20 +02:00
256b8e8013 Added more test cases and reformatted output a bit. 2013-08-06 11:14:45 +03:00
30456115f7 Memory used by user structure was not initialized. Changed malloc to calloc. 2013-08-05 18:21:08 +03:00
13248c2a16 Added server/core/test directory, makefile and testhash.c for testing hashtable implementation.
In makefile, there is target all, which compiles and executes tests.
2013-08-05 18:04:02 +03:00
bc6fe8f6ef hashtable_add now checks input parameter and returns with zero (indicating that no elements were added) if hashsize is zero. Caused floating point exception. 2013-08-05 15:01:36 +03:00
ef1c514489 Added creation of an empty depend.mk file to core directory. 2013-08-05 13:50:52 +03:00
401d4920e4 Moved dcb_hashtable_stats from hastable.c to dcb.c to break dependency between hashtable and the rest of the maxscale. Added check fields to hashtable structure. 2013-08-05 11:51:10 +03:00
cae4d38a7e Removed unnecessary argument from log manager commands because it is not used and it is always NULL. 2013-08-04 23:30:47 +03:00
f62cf1ea7e Added check if the last admin user is to be deleted, and if that's the case, prevent it and return with error message. 2013-08-04 23:02:29 +03:00