Commit Graph

370 Commits

Author SHA1 Message Date
638c2250c9 Fixed internal test suite. 2015-09-29 16:36:12 +03:00
96f76a1f2e Changed the way max_sescmd_history works and combined disable_sescmd_history and disable_slave_recovery.
Before these changes when max_sescmd_history was used the session
was closed when the limit was exceeded. With this change, when the
limit is exceeded the recovery of slaves and the session command history
are both disabled. This will allow the sessions to continue while still
keeping the old functionality of limited salve replacement.

The disable_sescmd_history and disable_slave_recovery parameters were combined
so that disabling the session command history will also disable slave recovery.
This way no harm can be done with disable_sescmd_history.
2015-09-29 12:03:22 +03:00
db0e2e881f Double free prevented.
routeQuery calls route_single_stmt, which requires the GWBUF to be
contiguous. Earlier it was made contiguous (if needed) in
route_single_stmt. However, since the process of making a GWBUF
contiguous causes the original buffer to be freed, this would lead
to a double free later in routeQuery that frees the passed buffer.

This is prevented now by making the buffer contiguous before calling
route_single_stmt.
2015-09-29 10:57:45 +03:00
561891aac5 Fix for double free, possible fix for bug601.
In the end of execute_sescmd_in_backend the buffer was consumed
in case the protocol function failed. Or actually if it returned
something else but 1.

In the case of mysql_backend, the buffer is always freed when
authorizing and either consumed or placed on the dcb writequeue
when the data is written.

That is, it is never ok to consume the buffer in this function.
The end-result is likely to be an abort.
2015-09-21 13:45:15 +03:00
535523f9d7 Added an upper limit to trace log message length for queries. 2015-09-11 14:29:58 +03:00
70a7a5f2f6 Fix to MXS-328: https://mariadb.atlassian.net/browse/MXS-328
Removed gwbuf_free when the write fails.
2015-08-27 09:16:00 +03:00
b3be72022c Fixed use_sql_variables_in=master not working. 2015-08-25 21:53:54 +03:00
5adae0ff3b Added missing return value. 2015-08-23 20:46:16 +03:00
f014598d39 Added NULL checks. 2015-08-21 17:42:03 +03:00
3f26c306c5 Added more function parameter checks. 2015-08-18 22:19:26 +03:00
eac31b2618 Added master/slave percentage to readwritesplit diagnostic output. 2015-08-17 07:59:40 +03:00
a9e7eee718 Added missing spinlock calls to temporary table checks. 2015-08-14 20:43:01 +03:00
65bb80a3f1 Added more NULL checks to temporary table functions in readwritesplit. 2015-08-13 16:09:35 +03:00
a74ed87d07 Removed redundant linking of the utils library. 2015-08-10 10:40:00 +03:00
100f8ebd66 Removed unnecessary memory allocation. 2015-08-03 20:02:13 +03:00
086160b82d Added missing initialization of value. 2015-07-23 18:06:12 +03:00
e645007d3f Fixed empty packets being mishandled. 2015-07-22 16:49:47 +03:00
7363343499 Fixed dcb_write failing when the cause was EAGAIN or EWOULDBLOCK. 2015-07-22 15:34:51 +03:00
19d9c9982f Fixed session commands being executed multiple times. 2015-07-22 14:39:18 +03:00
b756690123 Merge branch 'release-1.2' into develop 2015-07-15 11:38:27 +03:00
124ad82de4 Small fix to readwritesplit session command handling. 2015-07-15 11:02:59 +03:00
78eab19c62 Fixed compiler warnings. 2015-07-14 17:13:09 +03:00
6497350ab7 Merge branch 'release-1.2' into develop
Conflicts:
	server/core/adminusers.c
	server/modules/protocol/mysql_client.c
2015-07-11 17:12:48 +03:00
ba417ef633 Merge remote-tracking branch 'origin/develop' into MXS-122
Conflicts:
	server/core/dcb.c
2015-07-08 14:54:22 +01:00
10d690273d Resolve compiler warnings 2015-07-08 11:35:41 +01:00
fb09cbf100 Fixed queries being routed when the session is already closing. 2015-07-07 13:15:23 +03:00
c2e51f2e98 Fix to MXS-223: https://mariadb.atlassian.net/browse/MXS-223
Added a temporary buffer to prevent losing the pointer to the cloned buffer when dcb->func.write fails.
2015-07-07 08:16:29 +03:00
dc646bfbf1 Fix to MXS-244: https://mariadb.atlassian.net/browse/MXS-244
Fixed buffers being only partially consumed if they contained more than one packet
when a replu to a prepared statement is received.
2015-07-04 09:07:37 +03:00
dc15fbb576 Fixed build failure. 2015-07-01 16:46:32 +03:00
53a4dd393d Fix to a Coverity defect. 2015-07-01 16:08:33 +03:00
a2e281823a Added NULL checks to readwritesplit. 2015-06-30 14:58:36 +03:00
c6f43c0058 Merge branch 'MXS-171' into develop 2015-06-29 12:04:43 +03:00
c9606e1071 Fixed build failures due to mismatching function prototypes. 2015-06-27 08:28:37 +03:00
03503a8f9b Fix a number of relatively simple bugs shown by Coverity. 2015-06-26 17:31:58 +01:00
7a8c307515 MXS-171: https://mariadb.atlassian.net/browse/MXS-171
Added option which allows the master server to be used for reads.
2015-06-24 19:23:43 +03:00
4c38e2224b Merge remote-tracking branch 'origin/develop' into MXS-122
Conflicts:
	server/core/CMakeLists.txt
	server/core/dcb.c
	server/include/dcb.h
	server/include/server.h
	server/modules/protocol/mysql_backend.c
2015-06-19 23:12:54 +01:00
d0e92a15f8 Move decrement of server connections into zombie processing; introduce dcb_close_finish to be called either in dcb_close or when persistent dcb is discarded. 2015-06-09 11:41:43 +01:00
5f076b81d4 Merge branch 'install_dir_change' into develop
Conflicts:
	CMakeLists.txt
	Documentation/Tutorials/Administration-Tutorial.md
	log_manager/CMakeLists.txt
	server/core/CMakeLists.txt
	server/core/gateway.c
	server/core/maxkeys.c
	server/core/maxpasswd.c
	server/modules/filter/test/CMakeLists.txt
	server/modules/routing/CMakeLists.txt
2015-05-26 13:34:39 +03:00
ff2462f2d2 Fix to MXS-127:https://mariadb.atlassian.net/browse/MXS-127
Corrected the wrong session commands being deleted.
2015-05-09 11:25:18 +03:00
d545150ceb Fix to MXS-70: https://mariadb.atlassian.net/browse/MXS-70
Added assert information to error log.
2015-05-02 05:51:25 +03:00
17a7b2addb Updated more variables. 2015-04-26 20:08:27 +03:00
df9bc65430 Added variables that are used when installing instead of relative paths. 2015-04-25 18:35:47 +03:00
21ad6fba2a Added option to disable slave recovery in readwritesplit. 2015-04-24 05:55:06 +03:00
8d4f301545 Added the option to disable session command history to readwritesplit. 2015-04-23 20:12:04 +03:00
282f66f9fd Merge branch 'develop' into MAX-324
Conflicts:
	utils/skygw_utils.cc
2015-03-06 17:07:39 +02:00
c937568624 Fixed a possible memory leak when session command history limits are used. 2015-03-05 20:46:55 +02:00
880adca73e Merge branch 'develop' into MAX-324 2015-03-05 10:45:48 +02:00
2d08bc4eda Fix to bug 736: http://bugs.mariadb.com/show_bug.cgi?id=736
Added a cofigurable limit on the number of session commands the readwritesplit router stores.
2015-03-01 02:27:47 +02:00
7a50e4be3d Small addition to previous fix to session command error handling. 2015-02-24 13:46:05 +02:00
21a77736bf Fixed session command error handling with backend DCBs that were already closed. 2015-02-24 13:44:01 +02:00