Commit Graph

679 Commits

Author SHA1 Message Date
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
88716c35fb Various changes to block loopholes in different cases and tidy up. 2015-09-21 09:23:22 +01:00
31c6666278 Ensure DCB for closing session does not become persistent; remove bref_was_not_in_use. 2015-09-17 14:38:56 +01:00
dc3b0b067b Revert the dcb_close changes in handleError. 2015-09-17 13:35:18 +01:00
1ad8e27c91 Try a different arrangement of DCB closures in handleError of read-write split. 2015-09-17 13:27:25 +01:00
357c4bcae5 Add to or take from persistent pool only if server is running; add conditions to DCB close in read-write handleError to check backend reference was in use. 2015-09-17 12:53:59 +01:00
583c9b62fe Close DCB in handleError only if it can be found in a backend reference. 2015-09-17 11:58:19 +01:00
30239f395a Fix bref when backend server fails, error message if fails. 2015-09-15 20:07:56 +01:00
fdbe070e80 Change abort to error message when read connection router finds mismatch between router client session DCB and given backend DCB; improve order of actions when closing DCB in read-write router. 2015-09-15 15:22:44 +01:00
535523f9d7 Added an upper limit to trace log message length for queries. 2015-09-11 14:29:58 +03:00
cfeaf7d6e9 Merge remote-tracking branch 'origin/develop' into MXS-329
Conflicts:
	server/core/session.c
2015-09-10 13:07:27 +01:00
f6916a23bd Move responsibility for closing DCB on error to router error handling. Check that routers remove or disable links to closed DCB. 2015-09-09 09:33:00 +01:00
986c918d52 Remove ERRACT_RESET action from router error handler; remove sole call from mysql_client. Correct comments on parameters for router error handlers. 2015-09-09 08:31:59 +01: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
37ac158791 Changes to try to eliminate setting dcb->session to NULL with risk of crashing system. 2015-08-24 12:12:43 +01: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