vraatikka
c9ff06e0f5
Increased maximum path length from 180 to 255, and replaced sprintf with snprintf to prevent buffer overflow.
2013-08-23 22:27:40 +03:00
vraatikka
68a5a389ee
Removed SS_DEBUG macros around necessary include directives.
2013-08-23 13:42:10 +03:00
vraatikka
481096ccef
Added trace log to newSession and to closeSession.
2013-08-22 10:46:14 +03:00
vraatikka
0401290021
Added spinlock ses_lock to struct SESSION to ensure that for each session closeSession is called only once.
...
closeSession is called from mysql_backend.c:gw_read_backend_event, and from dcb.c:dcb_close.
This is part of Bug #163 .
2013-08-22 10:42:18 +03:00
vraatikka
b18d89300d
Bug 179
2013-08-22 00:26:24 +03:00
vraatikka
8dfd5de923
Fix merge
2013-08-22 00:01:44 +03:00
Jan Lindström
b6ba1954f5
Merge
2013-08-19 08:48:33 +03:00
Mark Riddoch
9fe7a83675
Fixes for resource leaks foudn with Coverity.
...
Bug 173, 174, 175, 176 and 177
2013-08-21 17:26:55 +02:00
Mark Riddoch
2135a76f7b
Bug 172 - Compile errors in Galera Monitor
2013-08-21 17:25:43 +02:00
Mark Riddoch
1a18632920
Move fprintf to log
2013-08-21 16:35:01 +02:00
Mark Riddoch
4e41fc49f5
Bug 166 - NULL pointer dereferenced if candidate server is NULL
2013-08-21 12:08:41 +02:00
Mark Riddoch
2499378af9
Bug 160 - fixed freeing of username
2013-08-21 12:06:31 +02:00
Massimiliano Pinto
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
vraatikka
21dabda848
Removed redundant log writings.
2013-08-20 10:49:35 +03:00
vraatikka
2ad0b12d79
Check dcb->status and set new state with writeqlock on.
2013-08-19 19:41:47 +03:00
vraatikka
c5ed473ab7
Check return value of ioctl in dcb_read and act accordingly.
2013-08-19 19:40:51 +03:00
vraatikka
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
vraatikka
d6432b1750
Merge
2013-08-19 17:10:33 +03:00
vraatikka
45ea459e20
Check the return value of ioctl in dcb_read.
2013-08-19 17:09:33 +03:00
Mark Riddoch
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
vraatikka
f750b8545a
Merge
2013-08-19 16:40:44 +03:00
vraatikka
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
Mark Riddoch
b1c398e944
Bug 145 - Silently ignore missing .secrets file
2013-08-19 15:36:26 +02:00
vraatikka
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
vraatikka
24367fb400
Removed dcb->mutex since it didn't solve any problem.
2013-08-19 13:01:07 +03:00
vraatikka
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
vraatikka
7c0ed171a0
Added trace log to event handling.
2013-08-15 22:45:11 +03:00
vraatikka
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
vraatikka
90e6e11923
Added debug trace to socket read.
2013-08-15 11:13:34 +03:00
vraatikka
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
vraatikka
4051796653
Merge
2013-08-14 11:27:14 +03:00
vraatikka
eba81f0501
Corrected comparison between strcmp and 0 so that threads configuration parameter value becomes effective.
2013-08-14 11:25:03 +03:00
Mark Riddoch
fbc311730c
Bug 124: Add log message when an invalid router option is supplied
2013-08-13 15:14:32 +02:00
Jan Lindström
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
Jan Lindström
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
vraatikka
2d31d9ff5b
Initialized addr length indicator in telnetd_accept
2013-08-12 21:06:44 +03:00
vraatikka
249413b2c6
Freed thread structs.
2013-08-12 21:05:44 +03:00
vraatikka
c5fd94590c
Freed hashtable iterator to dcb_usersPrint.
2013-08-12 21:04:31 +03:00
vraatikka
64cb6eca56
mysql_library_end is not called if it wasn't initialized properly.
2013-08-12 13:12:23 +03:00
vraatikka
0c5125a44d
Typos
2013-08-12 13:11:05 +03:00
Massimiliano Pinto
7522eb617d
Added enable/disable commands, now for log_witer only
2013-08-09 15:12:23 +02:00
vraatikka
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
Massimiliano Pinto
8a9d178785
Fixed bug for invalid memory access in row[1]+1 when row[1] is ""
2013-08-08 18:40:02 +02:00
vraatikka
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
vraatikka
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
vraatikka
f1498e4403
Added log flusher thread, which flushes once per second.
2013-08-08 00:08:45 +03:00
vraatikka
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
Massimiliano Pinto
75e7de182f
fprintf debug for added backend connection is protected by if (backend->fd > 0)
2013-08-07 09:39:29 +02:00
Massimiliano Pinto
8449482279
Fixed typo
2013-08-06 10:55:20 +02:00
vraatikka
256b8e8013
Added more test cases and reformatted output a bit.
2013-08-06 11:14:45 +03:00