VilhoRaatikka
b106560317
Fix to bug # 634, http://bugs.skysql.com/show_bug.cgi?id=634
...
COM_SHOW_SLAVE_STAT wasn't classified but it was treated as 'unknown' and thus routed to master.
2014-12-03 13:27:31 +02:00
VilhoRaatikka
1bfedbee1d
Fix to bug #629 , http://bugs.skysql.com/show_bug.cgi?id=629
...
Master was selected for routing target even there was a slave available.
2014-11-28 14:17:35 +02:00
VilhoRaatikka
9aa828cd9b
Added debug assertions to catch wrong DCB usage
2014-11-27 22:04:34 +02:00
VilhoRaatikka
3941f5c31d
Added debug trace
2014-11-27 19:48:27 +02:00
VilhoRaatikka
3e18e091c1
Fixed unreported bug in log_manager where a terminating character was added in the middle of log message.
2014-11-27 16:53:50 +02:00
VilhoRaatikka
9cc0e1316c
Fix to #594 , http://bugs.skysql.com/show_bug.cgi?id=594
...
Changes to readwritesplit.c:get_dcb caused regression
2014-11-19 13:27:43 +02:00
VilhoRaatikka
fd11e6a7f5
Session-specific logging. Added functions
...
void session_enable_log(SESSION* ses, logfile_id_t id)
and
void session_disable_log(SESSION* ses, logfile_id_t id)
Which switch specific log type on/off if the log type in question is not generally enabled.
Each thread carries a thread-specific struct log_info_t which includes members for current session id and bitfield for enabled log types for the current session. That information is checked before actual log write functions are called.
Each file where session-specific logging is used, must include the following exports:
/** Defined in log_manager.cc */
extern int lm_enabled_logfiles_bitmask;
extern size_t log_ses_count[];
extern __thread log_info_t tls_log_info;
2014-11-19 00:08:59 +02:00
VilhoRaatikka
1c4ffd2599
Fix to bug #597 , http://bugs.skysql.com/show_bug.cgi?id=597
...
Changed the order of include directives in query_classifier.cc
2014-11-17 14:55:13 +02:00
VilhoRaatikka
34b155b6fe
Merge branch 'develop' of https://github.com/mariadb-corporation/MaxScale into develop
2014-11-17 13:58:18 +02:00
VilhoRaatikka
c9b679359f
Made RWSplit to use slave selection criteria also during client session. Previously the criteria was use when slaves were selected for use of client session.
2014-11-17 13:40:18 +02:00
Markus Makela
a96f2fe57b
Fixed some typos and testing messages from CMake output.
2014-11-17 12:57:07 +02:00
VilhoRaatikka
4f136fa4d2
Fixed backend selection logic in get_dcb. If slave is not found write a warning to error log and fall through to master selection. If master has changed or previous master's state has changed, routing fails.
2014-11-15 23:57:09 +02:00
VilhoRaatikka
419fda5514
Fixed false positive debug assertion
2014-11-14 23:13:40 +02:00
VilhoRaatikka
e790437fc0
Fixed debug assert. If session is closed its router session pointer is nullified and it is not error.
2014-11-14 22:35:23 +02:00
VilhoRaatikka
8c1e7172f3
Added debug logging for #615
2014-11-14 20:48:33 +02:00
VilhoRaatikka
e35ad0c5d3
Fix candidate for bug #615
...
Removed invalid debug assert
2014-11-14 17:50:07 +02:00
VilhoRaatikka
81009e7d19
Fix candidate to bug #615
...
Mark backend reference closed in handleError
2014-11-14 15:20:15 +02:00
Markus Makela
2b11b53144
Fixes to Coverity defects 72681, 72683, 72691.
2014-11-12 17:25:49 +02:00
VilhoRaatikka
0ea4dd63a9
Merge branch 'develop' of https://github.com/mariadb-corporation/MaxScale into develop
2014-11-11 14:25:49 +02:00
Markus Makela
98a362b430
Fix to Coverity error 72685
2014-11-11 14:10:15 +02:00
VilhoRaatikka
061fa62d29
Fixes to Coverity issues 77197 (mysql_common.c, dcb.c, mysql_client.c, skygw_debug.h), 72654 (poll.c), 72756 (mysql_backend.c), 72744 (mysql_backend.c), 77197 (mysql_common.c), 72746 (mysql_common.c), 72676 (mysql_common.c), 72705 (readwritesplit.c), 72697 (readwritesplit.c), 72652 (skygw_debug.h)
2014-11-11 14:10:06 +02:00
VilhoRaatikka
24c1106abf
Removed invalid assertion from readwritesplit.c
2014-11-10 17:05:40 +02:00
VilhoRaatikka
a3675e9098
Merge branch 'develop' of https://github.com/mariadb-corporation/MaxScale into develop
2014-11-10 14:18:43 +02:00
VilhoRaatikka
62270412cf
readwritesplit.c: prevent switching the master during session. Added logging to cases where master has changed.
...
Moved DCB's member errhandle_called behing DEBUG flags to Release build. It shows if handleError is called for a DCB and makes it possible to avoid redundant calls.
2014-11-10 14:15:32 +02:00
Markus Makela
e86b51865c
Fixes to Coverity errors 72653, 72685, 72707, 73391, 73393, 73394, 73410 and 73414.
2014-11-10 13:51:21 +02:00
Markus Makela
37fa9668a9
Added a check for MySQL client libraries for the connection tests and re-enabled the tests.
2014-11-10 09:06:23 +02:00
Markus Makela
5490954e43
Disabled login tests.
2014-11-07 18:47:41 +02:00
Markus Makela
c62261710b
Fixed wrong mysql libraries being used in the tests
2014-11-07 18:32:37 +02:00
VilhoRaatikka
00245201bb
Merge branch 'develop' of https://github.com/mariadb-corporation/MaxScale into develop
2014-11-07 17:57:06 +02:00
VilhoRaatikka
44771dbc51
readwritesplit.c:handleError is meant to handle backend errors. Removed one call from mysql_client.c and only send error message to client instead.
...
Added checks to debug build to ensure that handleError is called before backend DCB is closed.
2014-11-07 17:55:05 +02:00
Markus Makela
813529b476
Added a test for the time it takes to login through MaxScale with various routers.
2014-11-07 17:05:21 +02:00
Markus Makela
a4caac55c8
Fixes to Coverity errors:
...
72662
72702
72724
73397
73410
73414
73422
75424
75748
75789
75938
75939
Also includes a fix to a bug caused by a previous Coverity error change in canonizer.c
2014-11-07 11:52:40 +02:00
VilhoRaatikka
1ed3c9cc62
Fix to Coverity issues 72731 and 72708
...
In routeQuery: check if master has failed and in that case abort routing with an error sent back to the client.
handle_error_new_connection also tests for master failure and returns with error if that is the case.
2014-11-06 22:24:12 +02:00
Markus Makela
8cfea996e7
Fixed an unassigned pointer causing memory corruption.
2014-11-06 20:04:18 +02:00
Markus Makela
c4d51f54cd
Fixes to Coverity bugs:
...
72743
73407
73408
73409
73415
73419
2014-11-06 15:40:11 +02:00
VilhoRaatikka
665315ea5c
Fix to bug #612 , http://bugs.mariadb.com/show_bug.cgi?id=612
...
Also added error logging in cases where memory allocation failed etc.
2014-11-05 22:04:36 +02:00
Markus Makela
699d07a613
Merge branch 'develop' of https://github.com/mariadb-corporation/MaxScale into develop
2014-11-05 14:22:46 +02:00
Markus Makela
36c6a61330
Fixes to coverity bugs:
...
72670: query_classifier/query_classifier.cc
72682: server/modules/filter/qlafilter.c
72679: server/modules/filter/tee.c
72716: server/modules/protocol/maxscaled.c
72694: server/modules/protocol/telnetd.c
71743: server/modules/routing/readwritesplit/readwritesplit.c
2014-11-05 14:18:38 +02:00
VilhoRaatikka
42fc241cb7
Added comment to server selection routine
2014-11-05 12:15:48 +02:00
VilhoRaatikka
3278be565a
Fix to bug #609 , http://bugs.mariadb.com/show_bug.cgi?id=609
...
If target can't be resolved, master is chosen. Bug cause master be chosen in most of the cases.
2014-11-05 11:18:25 +02:00
VilhoRaatikka
9ccbab1899
poll.c:dcb_close Don't call poll_remove_dcb anymore if DCB has already been removed from poll set.
...
mysql_backend.c, mysql_client.c free error message GWBUF after calling handleError
readconnroute.c:handleError send error message to client before returning.
readwritesplit.c:handleError don't free error message buffer anymore since the caller of handleError frees it.
2014-11-01 20:00:59 +02:00
VilhoRaatikka
00fded016b
Fixes to Coverity tasks : 73267, 72686, 72672
...
Cleaned up warnings, and added checks to malloc return values and error log writes in case of failures.
2014-10-31 15:25:59 +02:00
VilhoRaatikka
848c7aa0b8
Fixes to Coverity cases 72678 (retry), 72693
2014-10-31 11:38:57 +02:00
VilhoRaatikka
16f2c39bea
Fine tuning of log print.
2014-10-25 00:28:48 +03:00
VilhoRaatikka
236a72a6b6
Fix to bug #590 , http://bugs.mariadb.com/show_bug.cgi?id=590
...
mysql_common.c:gw_send_change_user_to_backend creates new authentication message which is to be sent to backend. GWBUG type flags were not copied from original GWBUF to new one. Thus the information that this is a session command was lost and it was processed in a wrong way. Especially replies were all routed back to client which caused misbehavior.
2014-10-25 00:19:31 +03:00
VilhoRaatikka
7a1b35dc88
Fix to bug #590 , http://bugs.mariadb.com/show_bug.cgi?id=590
...
readwritesplit.c:execute_sescmd_in_backend didn't set GWBUF_TYPE_SESCMD type to GWBUF the command is in. Thus reply wasn't processed properly. Instead all replies were sent to client.
2014-10-23 18:56:27 +03:00
VilhoRaatikka
287bc90465
Fix to bug #585 , http://bugs.mariadb.com/show_bug.cgi?id=585
...
buffer.c:gwbuf_make_contiguous: when new buffer is created, copy original buffer's type to new buffer
modutil.c:modutil_replace_SQL: when new bugger is added to GWBUF, copy original buffer's type to new buffer
In all filters, merge all buffers of GWBUF to one before calling modutil:extract_SQL
2014-10-21 21:13:21 +03:00
VilhoRaatikka
d065be4824
readwritesplit.c:get_dcb assumed thet get_root_master_bref always returns non-null pointer. Changed it so that get_dcb_returns if it doesn't get master bref pointer.
2014-10-20 22:41:10 +03:00
VilhoRaatikka
4daf255d60
Fixed use of uninitialized variable.
2014-10-20 13:20:53 +03:00
VilhoRaatikka
ebd92c8741
readwritesplit.c:routeQuery if target is master but it is found out when get_dcb returns that master DCB has changed, routeQuery fails and logs to trace that master changed.
2014-10-20 10:40:32 +03:00