1b04a0cf91
Fix issues with error handling needing to cater for both client and backend DCBs.
2015-11-02 16:27:44 +00:00
bad61b0740
Change binlog router to indicate it does not use router sessions via the getCapabilities interface.
2015-10-27 14:17:06 +00:00
06f6b28048
Fix to MXS-412: https://mariadb.atlassian.net/browse/MXS-412
...
service->user is now set to NULL after the users are freed.
2015-10-19 09:01:58 +03:00
5112d4118f
Fix to MXS-409: https://mariadb.atlassian.net/browse/MXS-409
...
Prepared statements are sent to the master instead of all servers.
The planned functionality to store the types of the prepared statements was not implemented
and all executions of prepared statements are sent to the master. Because of this the preparations
should be all sent to the master server instead of sending them to all servers.
2015-10-19 09:01:58 +03:00
6040f11070
Include DCB headers to remove warnings.
2015-10-17 20:06:37 +01:00
482db5e84d
User friendly bit mask display for DCB print; monitors to work via inserting hangups instead of callbacks.
2015-10-17 20:00:05 +01:00
12ceb0db02
Check for dummy session in mysql_backend protocol and ignore.
2015-10-15 14:17:49 +02:00
cc42707dc0
The read_buffer pointer must be set to null in situations where the buffer has been freed (or consumed).
2015-10-13 15:10:55 +02:00
bb53eb0f6d
Put extra check in hashtable_fetch to return if zero entries (should never happen but will crash if not checked); remove dcb_close from mysql_backend where it closes backend DCBs, as these should be closed by the router.
2015-10-07 17:06:21 +01:00
e38ea9d07d
Correct missing return value.
2015-10-02 16:19:59 +01:00
4f316419c5
Merge branch 'develop' into MXS-329
2015-09-30 12:47:28 +03:00
48fd181245
Merge branch 'test_fix_1.3' into develop
2015-09-30 08:34:02 +03:00
638c2250c9
Fixed internal test suite.
2015-09-29 16:36:12 +03:00
d679bf1cd8
Fix to MXS-389: https://mariadb.atlassian.net/browse/MXS-389
...
Utility tools now use static log manager.
2015-09-29 14:56:05 +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
447c3aa6c1
More code cleaning.
2015-09-29 12:03:21 +03:00
abab715a21
Simplified the code in parse_time.
2015-09-29 12:03:21 +03:00
f021d42820
Cleaned up the timerange string processing in dbfwfilter.
2015-09-29 12:03:21 +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
2231d0870c
Place checks in callback routines because DCB will not always contain a reference to a router session, and the associated data will be invalid in this case.
2015-09-25 12:17:18 +01:00
9efad8727a
All warnings removed.
...
Minimal changes to remove warnings when compiling.
2015-09-25 14:07:19 +03:00
1e694a6c7d
Debug messages logged to debug.
2015-09-25 13:49:30 +03:00
2dfb9e3c11
Merge branch 'develop' into MXS-329
2015-09-24 17:59:36 +03:00
89667294b3
Fix exceptional cases in DCB dcb_call_callback and in MySQL backend gw_error_backend_event - close DCB and return.
2015-09-24 07:39:47 +01:00
6a318836fb
Removed obsolete code.
...
The read and write buffers are now emptied in dcb_final_free, so
no need to do it explicitly here.
2015-09-23 15:16:19 +03:00
f7946a05fa
Fix in extract_message
...
Fix in extract_message
2015-09-23 14:05:02 +02:00
95a4daecc9
Add GWBUF_POINTER_IN_BUFFER macro; add extra free calls to remove memory leaks.
2015-09-22 11:54:47 +01:00
7aa36b77ea
Guarantee router session is present for call to clientReply; properly free callbacks; attempt to set all necessary values for dbusers; do more to ensure buffers freed.
2015-09-21 14:25:12 +01:00
11c8ef5b92
Cleaned up code based on the review of the code.
2015-09-21 14:02:01 +03:00
988a8d7008
Fixed error messages not being printed and cleaned up the function.
2015-09-21 14:02:01 +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
88716c35fb
Various changes to block loopholes in different cases and tidy up.
2015-09-21 09:23:22 +01:00
de8e54da8b
Fix for compile error
...
Fix for compile error
2015-09-21 09:00:39 +02:00
2c12ba3d16
Various fixes
...
Various fixes for initialisation and packet size allocation
2015-09-21 09:00:20 +02:00
8d5ca11374
Fixed: spinlock_release is before free
...
Fixed: spinlock_release is before free
2015-09-18 16:05:22 +02:00
2a2582067a
Added fix blr_slave_register reply
...
Added fix blr_slave_register reply
2015-09-18 11:06:03 +02:00
e507933c48
Need to mark the DCB dcb_errhandle_called indicator if the router error handler is not called.
2015-09-18 09:19:32 +01:00
f3560512ff
Suppress call to router error handling where there is no router session.
2015-09-18 09:04:32 +01:00
c69658889c
Handle client input case where no router session exists by sending error message to client.
2015-09-18 08:59:06 +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
0cba9b797f
Changes to deal with failed session creation by keeping the new session in existence until all related DCBs have closed; minor changes in response to reviews.
2015-09-17 08:15:32 +01:00
6ad89cb986
Removed boolean value assignment to an integer variable.
2015-09-16 13:36:33 +03:00
6c75e09f29
Fixed multi-source replication not working.
2015-09-16 11:54:56 +03: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
0cf4b2cf68
Fix to overcome failure on certain packets.
2015-09-15 08:37:41 +01:00