Markus Makela
ce53159e7d
Moved dbshard tests to a separate cmake file
2014-12-19 17:23:26 +02:00
VilhoRaatikka
c33e17db31
Fix to NULL reference
2014-12-19 14:05:56 +02:00
VilhoRaatikka
726f221113
Added debug log to session closing and related functions
2014-12-19 12:18:25 +02:00
VilhoRaatikka
55447919ce
Fix to Coverity issue 84943
2014-12-19 11:35:17 +02:00
Markus Makela
d41d16a1f3
Cleaned up the code and documented fucntions.
2014-12-18 19:51:24 +02:00
VilhoRaatikka
ac97fcd764
Removed redundancy from error and message logs.
...
server.c: Added new member to SERVER->master_err_is_logged. It is used if server loses master status. It causes error log print in readwritesplit router's eror handling. Initial value is false and it is set always to false when server's status is set to master.
Added message log printing to mysql monitor, if master status changes to something else. It is not warning or error but only information which probably interests the user.
readwritesplit.c:Muted warnings and error printings in cases if slaves are not found if it is allowed to have a master only.
readwritesplit.c:Corrected error log printing in case where master lost its status. REdundant prints are removed.
2014-12-18 19:12:01 +02:00
VilhoRaatikka
494ac968e2
Fix candidate to bug #642 , http://bugs.skysql.com/show_bug.cgi?id=652
...
If user only has a privileges to certain table, login with db still succeeds.
Removed invalid debug assertion from readwritesplit.c
2014-12-17 23:51:04 +02:00
Markus Makela
a7d1a865de
Updates to how shards are discovered while the module is running
...
SHOW DATABASES now takes notice of the state of the backends
Added scripts for sharding test preparation and local port blocking
2014-12-17 16:22:52 +02:00
Markus Makela
e6fca9b50d
Added a simple test for dbshard router.
...
The test sets a session variable and queries a union of this variable and a value in each of the databases.
2014-12-17 14:06:34 +02:00
Mark Riddoch
a655e394ac
Merge branch 'blr' into release-1.0GA
...
Conflicts:
server/core/service.c
2014-12-16 15:44:19 +00:00
Mark Riddoch
203e83d508
Update to COM_STATISTICS to show master connection state
2014-12-16 15:35:39 +00:00
Markus Makela
6013009c13
Merge branch 'MAX-324' of https://github.com/mariadb-corporation/MaxScale into MAX-324
2014-12-16 14:34:06 +02:00
Markus Makela
e4042019e1
Fixed client session termination due to wrong packet sequence numbers.
2014-12-16 14:33:05 +02:00
VilhoRaatikka
f861d67b7f
Removed all references to use_sql_variables_in variable where it is used in dbshard.
...
Commented out dead code.
Fixed some indentations.
2014-12-16 14:14:57 +02:00
Mark Riddoch
909518fac7
Improved error messages
...
Support for running out of disk space in the binlog router
Support for COM_PING & COM_STATISTICS added in the binlog router
Addition of binlogdir router option
2014-12-16 10:38:09 +00:00
Markus Makela
1e43102eea
Merge branch 'release-1.0GA' into firewall
2014-12-16 11:10:02 +02:00
VilhoRaatikka
ef94b7ee54
dbshard.c:get_shard_route_target global system variables weren't routed to all servers because an invalid variable was used determine whether statement should be routed to all or to master only.
2014-12-15 23:31:07 +02:00
VilhoRaatikka
7271586701
Merge branch 'MAX-324' of https://github.com/mariadb-corporation/MaxScale into MAX-324
...
Conflicts:
server/modules/routing/dbshard/dbshard.c
2014-12-15 15:24:56 +02:00
Markus Makela
3dd1f70109
Added a function that generates a custom result set for SHOW DATABASES.
...
Fixed SHOW TABLES not using the current database.
2014-12-15 15:06:06 +02:00
VilhoRaatikka
82407ceaf4
Fix to #650 , http://bugs.mariadb.com/show_bug.cgi?id=650
...
Added checks.
2014-12-15 15:03:47 +02:00
VilhoRaatikka
6f6df39e62
Merge branch 'release-1.0GA' of https://github.com/mariadb-corporation/MaxScale into release-1.0GA
2014-12-15 11:41:12 +02:00
VilhoRaatikka
4dd6f1b9c0
Added comment to assertion regarding to bref->bref_pending_cmd which is a one-slot buffer for database query. If sessoin command cursor is active when query is routed, instead of routing the query to backend it is stored to bref_pending_cmd to wait until previous (session) command is completed. The assertion traps if there is a command already in the bref_pending_cmd.
...
Situation is wrong because client shouldn't send new query before the previous (the pending one) is executed in backend and the reply is sent to the client.
2014-12-15 11:35:07 +02:00
Markus Makela
04a92e40df
Fixes to Coverity defects 84879 84878 72752 72742
2014-12-15 06:28:47 +02:00
VilhoRaatikka
a4968f2521
Complete fix candidate for #645 , http://bugs.skysql.com/show_bug.cgi?id=645 and #648 , http://bugs.skysql.com/show_bug.cgi?id=648
...
tee.c:closeSession removed unnecessary dcb_free, router/service closes all backend DCBs and the client DCB, and client DCB is the one that was tried to free in closeSession.
readwritesplit.c:routeQuery now handles untyped and typed GWBUFs. Untyped means that read buffer may consist of incomplete and multiple MySQL packets. Typed buffer always consists of a single MySQL packet (which can be split to many buffers inside GWBUF).
Fixed Coverity cases #84840 and #84841
2014-12-14 11:26:15 +02:00
Markus Makela
a91845b324
Re-enabled the ignore list, it uses the parameter 'ignore databases=<list of db names>'.
...
Added routing of trivial queries and ignored databases to the first available backend.
2014-12-13 07:47:46 +02:00
VilhoRaatikka
c31f971999
Fix candidate for #645 , http://bugs.skysql.com/show_bug.cgi?id=645 and #648 , http://bugs.skysql.com/show_bug.cgi?id=648
...
If readwritesplit.c:routeQuery gets a GWBUF whose type is UNDEFINED, then each MySQL packet is extracted from input buffer and passed to new function, route_single_stmt. Each extracted packet is stored in separate GWBUF and added types GWBUF_TYPE_MYSQL and GWBUG_TYPE_SINGLE_STMT which makes it possible to execute session commands and process reply packets properly.
Code nedes still cleaning but this is for testing atm.
2014-12-13 01:55:40 +02:00
VilhoRaatikka
339f604d73
Merge branch 'release-1.0GA' of https://github.com/mariadb-corporation/MaxScale into release-1.0GA
2014-12-12 21:18:13 +02:00
VilhoRaatikka
600d29a6d1
Merge branch 'MAX-324' of https://github.com/mariadb-corporation/MaxScale into MAX-324
...
Conflicts:
server/modules/routing/dbshard/dbshard.c
2014-12-12 21:08:21 +02:00
VilhoRaatikka
52db8ce15e
Removed useless comments
2014-12-12 21:06:59 +02:00
Markus Makela
175756c478
Fixed some missing return values and added database change routing to right shard.
2014-12-12 16:25:19 +02:00
VilhoRaatikka
e55c70b329
Session status wasn't updated in tee filter's closeSession
2014-12-12 14:36:05 +02:00
Mark Riddoch
1fc063b437
Added pepared statements and field lsit support to the command types
...
to duplciate
2014-12-12 10:02:24 +00:00
Mark Riddoch
680f7ef2c1
Add fix for duplicating COM_QUIT, COM_INIT_DB and COM_CHANGE_USER packets
2014-12-12 09:45:52 +00:00
Mark Riddoch
573cf6040c
Check for the duplciate service being the same as the service that is using the
...
tee filter. I.e. trap simple recursive definitions.
2014-12-11 13:45:21 +00:00
Markus Makela
a7cc40dc6a
Added error message generation for non-existent databases and backend status checks.
2014-12-11 11:45:40 +02:00
Mark Riddoch
df1ff25be4
Changes for file system full detection
2014-12-10 09:07:14 +00:00
Markus Makela
f2cec6e51e
Merge branch 'release-1.0GA' into firewall
...
Conflicts:
query_classifier/query_classifier.cc
2014-12-09 14:23:07 +02:00
Markus Makela
78d09c35cb
Added functions for shard runtime updating.
2014-12-09 14:12:12 +02:00
Mark Riddoch
0fb1918887
Improved error handlign for binlog directory and files
2014-12-09 09:55:05 +00:00
MassimilianoPinto
19cf44bd59
Coverity fixes: 72650, 72665
...
Coverity fixes: 72650, 72665
2014-12-09 08:58:52 +01:00
VilhoRaatikka
cf40cbfbf0
Aadded some of the code from routeQuery to its own function, change_current_db, which extracts db name, tests if the name can be found among cached database names (hashtable) and if it does, change the db. Otherwise create an error message and add it to poll eventqueue like it was sent from some of the backends.
2014-12-08 23:37:21 +02:00
VilhoRaatikka
bc104c0ef1
Merge branch 'release-1.0GA' into MAX-324
2014-12-08 22:37:15 +02:00
VilhoRaatikka
c1de3db7a3
Merge branch 'MAX-324' of https://github.com/mariadb-corporation/MaxScale into MAX-324
2014-12-08 21:21:37 +02:00
Markus Makela
2ff3939ba2
Active databases are only updated if they are found in the router's hashtable.
2014-12-08 16:35:47 +02:00
VilhoRaatikka
6a54d888de
Merge branch 'release-1.0GA' of https://github.com/mariadb-corporation/MaxScale into release-1.0GA
2014-12-08 16:04:27 +02:00
VilhoRaatikka
5264a1abc9
Added function documentation, moved one non-error log entry to message log, cleaned up a bit.
2014-12-08 16:02:16 +02:00
VilhoRaatikka
7ed253ecae
Cleanup
2014-12-08 11:21:46 +02:00
Mark Riddoch
8fed527ac9
Merge branch 'release-1.0GA' into blr
2014-12-08 09:21:38 +00:00
Mark Riddoch
ce056dccd8
Update modue status of all GA modules
2014-12-08 09:19:35 +00:00
Markus Makela
e76215bf07
Added detection of COM_INIT_DB
2014-12-08 11:15:10 +02:00