Commit Graph

1081 Commits

Author SHA1 Message Date
533042b61a Fixes to coverity defects from 85514 up to 85529. 2015-01-15 14:09:11 +02:00
88a26f03ab Fix to bug 685: http://bugs.mariadb.com/show_bug.cgi?id=685
Added the missing detection of partial packets in the buffers.
2015-01-15 13:13:09 +02:00
85c84c9e71 Fixed debug variables being used out of debug blocks. 2015-01-15 05:11:08 +02:00
b635eb1493 Additional debugging info added to tee filter. 2015-01-14 21:13:52 +02:00
7e05d4d716 Merge branch 'develop' into remove_makefiles 2015-01-14 19:09:43 +02:00
06c2d201e0 remove makefiles and other garbage 2015-01-14 19:08:24 +02:00
5c210455fa Fixed variable declaration being inside a debug build only block. 2015-01-14 18:20:59 +02:00
b3824a1eaf Clean up bits and pieces, removed some unnecessary checks. 2015-01-14 14:11:19 +02:00
df2297aa6c Added missing command types that possibly receive multiple packets to tee.c. 2015-01-13 22:10:47 +02:00
b4c01cf956 Merge branch 'develop' of https://github.com/mariadb-corporation/MaxScale into develop 2015-01-13 21:39:41 +02:00
7f4675cd57 Fix to bug 685: http://bugs.mariadb.com/show_bug.cgi?id=685
Added the missing ERR packet detection to modutil functions.
2015-01-13 21:32:04 +02:00
61efbfe687 Added comment to mysql_backend.c:process_response_data 2015-01-13 09:52:54 +02:00
d194af0733 Moved result set processing functions to modutil.c from tee.c. 2015-01-13 09:45:58 +02:00
2b4e6bb594 Merge branch 'develop' into firewall
Conflicts:
	server/modules/filter/test/CMakeLists.txt
2015-01-13 07:48:43 +02:00
c7362cec23 Update to bug 685 fix: http://bugs.mariadb.com/show_bug.cgi?id=685
Fixed results sets not being processed as a set of multiple packets.
2015-01-12 18:52:59 +02:00
759b0c2ccb Fix to bug 685: http://bugs.mariadb.com/show_bug.cgi?id=685
Tee filter now supports longer packets and only sends the last GWBUF if both the parent and the child session have send all their bytes.
2015-01-09 19:38:50 +02:00
af415f58c3 Add support for select @@max_allowed_packet 2015-01-07 17:38:41 +00:00
613ed8bb61 Cleanup some log messages 2015-01-07 17:37:32 +00:00
c4006d43c2 Fix to Coverity defect 85262 2015-01-06 05:28:58 +02:00
cd99849581 Fix #2 to bug 680: http://bugs.mariadb.com/show_bug.cgi?id=680"
When no users are loaded from backends, instead of counting it as a failure the service is started and the next time a client connects an attempt to load the users from the backends is made.
2015-01-05 17:38:45 +02:00
91a3109f4d Fix to bug 638: http://bugs.mariadb.com/show_bug.cgi?id=638
readwritesplit.c:Added missing backend type when using max_slave_replication_lag hint.
2015-01-05 14:28:16 +02:00
468ce72c18 Fix to bug 681: http://bugs.mariadb.com/show_bug.cgi?id=681
Added casts to floating point versions of values when doing divisions.
2015-01-05 13:54:27 +02:00
6adccb3c17 Fix to bug 680: http://bugs.mariadb.com/show_bug.cgi?id=680
service.h:Added the 'serviceStartFailed' function which tries to start services with successfully started routers but no successfully started listeners.
mysql_mon.c:Added a call to ServiceStartFailed when servers come available.
2015-01-05 13:38:39 +02:00
185e5b82d6 Merge branch 'release-1.0GA' of https://github.com/mariadb-corporation/MaxScale into release-1.0GA 2015-01-05 06:09:39 +02:00
ba009e5fd3 Fixes to Coverity defects 85010 84878 72752 72742 72719 and 73418.
skygw_utils.cc: Added function is_valid_posix_path that checks if a path is POSIX-compliant.
2015-01-05 06:05:56 +02:00
2d3491e123 Additional fix to bug #676
readwritesplit.c:route_session_write: added check that at least one backend is being used.
2015-01-03 01:47:11 +02:00
9be2212d96 Fix to bug #676, http://bugs.mariadb.com/show_bug.cgi?id=676
readwritesplit.c:route_session_write failed if the last backend on all backends list was not in use. THe situation where not all backends are used by routing session is normal especially if max_slave_connections is not set to 100%. Thus session commands may have failed if user was bit unlucky.
Changed the logic so that the function fails (and session is closed) if routing fails to any such backend which is in use in the session.
2015-01-03 01:21:30 +02:00
b3d79f7273 Merge branch 'release-1.0GA' into bug_679_fix 2015-01-02 20:57:28 +02:00
95cd0b93cb Fix to bug 679: http://bugs.mariadb.com/show_bug.cgi?id=679
Added server references to services instead of using a raw pointers to server instances.
Changed all references to service->database to service->dbref.
2015-01-02 20:55:38 +02:00
a3d5367d55 Merge branch 'release-1.0GA' of https://github.com/mariadb-corporation/MaxScale into release-1.0GA
Conflicts:
	server/modules/filter/tee.c
2015-01-02 18:43:17 +02:00
6228be4284 Fix to bug #678, http://bugs.skysql.com/show_bug.cgi?id=678
tee.c:routeQuery cloned partial MySQL packets to be routed to child router. Problems were due to the use of gwbuf_clone and modutil_MySQL_query which clone/examine only the first buffer from the buffer list which composes GWBUF.
modutil.c: Added function modutil_MySQL_query_len which calculates MySQL packet length and the missing bytecount
2015-01-02 18:32:57 +02:00
ef19b9e729 Fixed concurrency issues in tee.
tee.c: added a spinlock to the session which is used in clientReply
2015-01-02 16:21:21 +02:00
ed961b5d1b Merge branch 'release-1.0GA' of https://github.com/mariadb-corporation/MaxScale into release-1.0GA 2015-01-02 16:13:15 +02:00
a99c24e9dc Tee filter now only returns the reply from the parent service. 2015-01-02 16:12:44 +02:00
48f443782e Fixed a typo 2015-01-02 09:55:55 +02:00
38b16ec2d0 Merge branch 'release-1.0GA' of https://github.com/mariadb-corporation/MaxScale into release-1.0GA 2015-01-02 09:54:29 +02:00
a745383956 Added debug log to mysql_backend.c:gw_read_backend_event to tracm the case where less than 5 bytes is read from backend. This is potential issue with long result sets. 2015-01-02 09:53:24 +02:00
4e655eda0a Fixes to coverity defects 85250 and 85251. 2015-01-02 07:21:13 +02:00
89a394ab09 Fixed orphaned sessions being stuck in the SESSION_STATE_STOPPING state. 2015-01-01 19:53:26 +02:00
9061967c31 Added simple query success detection to tee filter.
tee.c: If one query fails and the other succeeds the successful one is returned to the client.
2015-01-01 14:14:36 +02:00
ce58157901 Added more debugging output.
tee.c: Added details about the freeing of orphaned sessions.
session.: Added missing cases of session state into the session_state function in debug builds.
2015-01-01 13:03:03 +02:00
162391c46c Fixed orphaned branch sessions leaking memory.
tee.c: Created a static, module-wide list of orphaned branch sessions which holds the branch sessions that can't be freed at the
time the parent session is being freed. This list is processed every time a a tee filter session is freeing its memory.
2015-01-01 07:37:28 +02:00
2eee4ae4fd Fix to Bug #657, http://bugs.skysql.com/show_bug.cgi?id=657
filter.c:filter_free:if filter parameter is NULL, return.
tee.c:freeSession: if my_session->dummy_filterdef is NULL, don't try to release the memory
2015-01-01 01:20:21 +02:00
f4f537a3e2 Fix to bug #673, http://bugs.skysql.com/show_bug.cgi?id=673
dcb.c:dcb_hashtable_stats:division by zero
hashtable.c:hashtable_get_stats: NULL-pointer reference
service.c:serviceStartPort:set service->users NULL to avoid referring to freed memory
users.c:dcb_usersPrintf: NULL-pointer reference
debugcmd.c:convert_arg: changed return value to 1 in case of error, 0 (==NULL) is valid but it indicates that there are no users loaded.
	execute_cmd: fixed command handling
2014-12-31 21:06:28 +02:00
9b52f5e6ba Merge branch 'release-1.0GA' of https://github.com/mariadb-corporation/MaxScale into release-1.0GA 2014-12-31 16:28:05 +02:00
51ebfb9862 Fix to Coverity issue 85210. 2014-12-31 16:29:07 +02:00
6710d5d25e Fixed a call to free with a pointer to a stack allocated struct. 2014-12-31 16:26:42 +02:00
316093f912 Fixed memory leaks and cleaned up dead code. 2014-12-31 15:38:15 +02:00
d1bc68c7d0 Added new member to TEE_SESSION structure: TEE_SESSION->tee_replybuf where reply message is stored until replied to client.
Temporarily commented out waiting section and left to be removed after further testing.
2014-12-31 14:42:14 +02:00
5ab329f888 Changed the way replies are handled.
Tee filter now receives two client replies, one from the parent service and
one from the child service. These replies are checked before cloning any more queries
into the child service. If the reply isn't sent fast enough, the child session is closed.
2014-12-31 12:58:37 +02:00