d91b6d375d
Added more documentation about functions and trace log output about users logging in with a default database.
2015-02-12 08:44:39 +02:00
a0a7dcdcfe
Fixed shardrouter possibly missing responses from the subservices if the session wasn't ready.
2015-02-10 20:36:53 +02:00
54eb3dd904
Fixed client hangups if the first response to a SHOW DATABASES query was sent too fast.
2015-02-10 16:07:50 +02:00
36363b09a1
Added more debug logging and fixed the service resources being overwritted even though they were already allocated.
2015-02-10 14:28:49 +02:00
d9139bb436
Added more tests for the dbshard router.
2015-02-10 10:49:54 +02:00
d455ec4c53
Added support for default databases.
2015-02-09 16:28:48 +02:00
7cf65adc6e
Added more trace log output about database changing and possible errors.
2015-02-07 00:04:13 +02:00
4c16eb55a2
Fixed hashing function returning wrong values and added more logging.
2015-02-06 16:27:24 +02:00
8a7b22d3df
Fix to SHOW TABLES FROM <db> being routed to the current database instead of the one in the query.
2015-02-05 10:34:04 +02:00
9c3cecf5b1
Fixed repeated reconnects to the server when multiple monitors were used simultaneously and some had failing backend servers.
...
Also added more documentation about dshard router's limitations.
2015-02-04 17:04:07 +02:00
0b5bedd2b8
The database name the client is connecting with is now checked that it exists in the hashtable before setting the session into a valid state.
2015-02-03 18:17:37 +02:00
9681b9cec4
Added error handling and re-mapping of databases to dbshard router in addition to hint detection.
2015-02-02 21:37:04 +02:00
c9c55ecfa3
Cleaned up unused code.
2015-02-01 21:53:05 +02:00
b6cd0916a0
Fixed a deadlock when the same thread tried to route a reply and a query at the same time.
2015-02-01 21:39:35 +02:00
d9ab0261b9
Fixed SHOW TABLES FROM ... queries being routed to the active database instead of the one defined in the query.
2015-01-31 12:38:39 +02:00
a69e1d5f01
Added some error handling to shardrouter.
...
The shardrouter now handles situations where the subservice sessions have failed and returns an error if an attempt to
query such a service is made.
2015-01-30 22:28:01 +02:00
08dd4d7053
First working implementation of the hierarchical router.
2015-01-25 21:24:22 +02:00
8791cc455e
Added the initial implementation of the shardrouter module.
2015-01-23 06:40:30 +02:00
f2ceaf166f
Commented out old code and fixed a memory leak.
2015-01-16 07:41:10 +02:00
f54d4a76aa
Final implementation of client session based sharding.
2015-01-15 20:24:01 +02:00
c1ed24aa78
Initial implementation of session based sharding.
2015-01-14 10:47:04 +02:00
aa60e02697
Fix to session variables not being written to all backends when USE DATABASE is used.
2015-01-08 14:08:49 +02:00
6e17bf5ec1
Updated dbshard with the new server reference changes.
2015-01-06 05:01:37 +02:00
ce53159e7d
Moved dbshard tests to a separate cmake file
2014-12-19 17:23:26 +02:00
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
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
6013009c13
Merge branch 'MAX-324' of https://github.com/mariadb-corporation/MaxScale into MAX-324
2014-12-16 14:34:06 +02:00
e4042019e1
Fixed client session termination due to wrong packet sequence numbers.
2014-12-16 14:33:05 +02:00
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
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
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
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
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
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
52db8ce15e
Removed useless comments
2014-12-12 21:06:59 +02:00
175756c478
Fixed some missing return values and added database change routing to right shard.
2014-12-12 16:25:19 +02:00
a7cc40dc6a
Added error message generation for non-existent databases and backend status checks.
2014-12-11 11:45:40 +02:00
78d09c35cb
Added functions for shard runtime updating.
2014-12-09 14:12:12 +02:00
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
2ff3939ba2
Active databases are only updated if they are found in the router's hashtable.
2014-12-08 16:35:47 +02:00
e76215bf07
Added detection of COM_INIT_DB
2014-12-08 11:15:10 +02:00
4c1ed65617
Added dbshard template to MaxScale_template.cnf
...
Added NULL-check to createInstance to avoid NULL-pointer reference if user/pwd is missing from config.
Removed unnecessary code, added error messages, fixed intendation.
2014-12-07 23:34:47 +02:00
0348df5147
Fixed databases being queried without a username or password and ignored the default databases when checking for shards.
2014-12-07 13:16:53 +02:00
15a96f037d
Merge remote-tracking branch 'origin/MAX-324' into MAX-324
...
Conflicts:
server/modules/routing/dbshard/dbshard.c
2014-12-07 06:11:24 +02:00
68fc849c6e
query_classifier.cc:cleaned up some intendentions and brackets.
...
dbshard.h:removed unnecessary code
dbshard.c:removed unnecessary code, cleaned up a bit and made some required changes
readwritesplit.c:removed two unnecessary variable assignments.
2014-12-07 00:34:23 +02:00
a580799eb2
Added messages about missing usernames and passwords for servers.
2014-12-07 00:07:58 +02:00
94b6fc8ff1
Merge branch 'MAX-324' of https://github.com/mariadb-corporation/MaxScale into MAX-324
2014-12-06 12:48:37 +02:00
06578c95a5
Updates to dbshard router:
...
Added a parsing function to query classifier that returns an array of database names the query uses.
Added a check if the query targets a sharded database. If so, a hint is added that routes the query to the named server.
2014-12-06 11:30:07 +02:00
7079cb4749
Cleaned a bit
2014-12-03 10:35:34 +02:00
ed8404d9c7
Fixed some of compiler errors
2014-12-02 11:05:14 +02:00