2eafe15bca
Added master_host update in the loop
...
Added master_host update in the loop, returns the right server in case
of multiple servers with same replication depth
2014-06-25 15:51:29 +02:00
2d128de85f
Replaced MySQL command macros with enumerated type. Each command has prefix 'MYSQL_' otherwise they match with those listed in mariadb-5.5 mysql_com.h.
...
Added server command list structure which is included in MySQLProtocol. It holds command and number of response packets the command causes backend server to send as a response. Added set of functions related to protocol command and response packets counting etc.
2014-06-25 15:48:55 +03:00
d30ff534b9
In dcb.c:dcb_read if there is nothing anymore to read from socket, it wasn't caught anyway. Added test for that case and immediate exit in that case.
2014-06-25 15:37:44 +03:00
fa08a141e4
Fix to reload dbusers
...
Tidyup show service output
2014-06-25 13:01:32 +01:00
792ae454f4
Add support for #!../maxadmin scripts
...
Add the --help option
Add quoting for executing command with arguments that contain whitespace
2014-06-25 10:00:59 +01:00
c14700fcff
Added documentation to new routines
...
Added documentation to new routines
2014-06-25 10:21:30 +02:00
e0596b7d72
Merge branch 'develop' into MAX-65
2014-06-25 08:28:17 +01:00
65c42b93cf
If backend fails and sets session state to SESSION_STATE_STOPPING before session is in state SESSION_STATE_ROUTER_READY, sessoin.c:session_alloc overwrites the session state by SESSION_STATE_ROUTER_READY. Protected session state modification and added check before changing the state.
...
cloesSession was called in session.c:session_free if all DCBs had been removed their references to session. closeSession, however, is function which handles closing router. Router is responsible for closing all backend DCBs (=connections). Thus, calling sessionClose after all backend connections had been removed already is unnecessary and causes assertion traps.
Simply removed the call.
2014-06-24 21:59:42 +03:00
c30e270768
Removed dcb->command from DCB structure as it was used for session commands but not anymore.
...
Corrected debug assertion in dcb_final_free because DCB can be freed also when DCB is being created, that is, state is DCB_STATE_ALLOC.
2014-06-24 21:56:15 +03:00
442ac7fefb
Added GWBUF type GWBUF_TYPE_SINGLE_STMT to indicate that buffer only includes single complete stmt. Added macro for checking the flag and changed existing routines as necessary.
2014-06-24 21:51:54 +03:00
a652e875b5
Support for multipacket statements
...
Remove double free in cloned DCB's
2014-06-24 17:59:29 +01:00
e1e172fe03
Fixed compile errors
...
Fixed compile errors
2014-06-24 18:37:17 +02:00
dfe3092dc5
Merge branch 'develop' into MAX-59
2014-06-24 18:21:09 +02:00
f09368924b
Added depth level 0 for each cluster node
...
Added depth level 0 for each cluster node, this way the algorithm for
root master selection will the same as in mysql replication:
the root master is server at lowest replication depth with MASTER bit
set
Here for Galera we assume all the servers are at the same level, that’s
0
2014-06-24 17:58:29 +02:00
52ef3b6718
New rules for selecting Master/Slaves
...
New rules for selecting Master/Slaves are based on MySQL depth in the
replication tree.
The only Master is the root server with SERVER_MASTER bit set
All other servers even with both SLAVE and MASTER bit will be selected
as slaves
2014-06-24 15:44:14 +02:00
6bfa8897cd
Fix compiler warning
2014-06-24 11:51:25 +01:00
584d8867bc
Replication tree is now a routine
...
Replication tree is now a routine
2014-06-24 11:18:59 +02:00
d36100a99f
Replication consistency with replication tree
...
Added replication consistency after replication tree computation
2014-06-23 13:12:26 +02:00
51d47accf7
Added replication consistency routines
...
Added replication consistency routines
2014-06-23 12:56:01 +02:00
d42469c6cc
Merge branch 'develop' into MAX-59
2014-06-23 12:42:32 +02:00
e650930487
Cleanup up branch session on close.
2014-06-23 10:10:04 +01:00
7ba64875ad
master_id, depth, slaves default values
...
master_id, depth, slaves default values
2014-06-23 09:51:50 +02:00
7067e43b44
Core changes to support tee filter.
2014-06-20 17:49:40 +01:00
e98b5d411e
Addition of tee filter
2014-06-20 11:47:07 +01:00
c759767a91
Use new session entry points to get remote and user rather than dereference
...
the DCB directly.
2014-06-19 16:07:21 +01:00
058d553973
Addition of user and source to all filter
...
Bug fix in timestamp for topfilter
2014-06-19 14:02:41 +01:00
2a1688bb3d
get level 0 for the first master
...
get level 0 for the first master
2014-06-18 18:57:09 +02:00
4d257897d3
Merge branch 'develop' of github.com:skysql/MaxScale into develop
...
Conflicts:
server/core/session.c
server/modules/protocol/mysql_backend.c
server/modules/routing/readwritesplit/readwritesplit.c
Resolved.
Addition of user in topfilter report and general tidyup
2014-06-18 17:45:57 +01:00
1b6a5efb64
merge from develop
...
merge from develop
2014-06-18 11:51:47 +02:00
b2d7d28b10
fix for slave set with mariadb 10 replication
...
fix for slave set with mariadb 10 replication
2014-06-18 11:46:29 +02:00
6bb7aa4311
first implementation for depth of replication
...
first implementation for depth of replication for nodes
2014-06-17 18:16:45 +02:00
751b81a3b6
getServerByNodeId added
...
getServerByNodeId added
2014-06-17 18:07:30 +02:00
38fd7b0844
master_id set by monitor
...
master_id set by monitor and printed via dprint* routines
2014-06-17 16:10:11 +02:00
e7fa80a591
Code clean up
2014-06-17 16:15:19 +03:00
e0c3ef24d7
typo fix
...
typo fix
2014-06-17 13:05:31 +02:00
fe846885d5
depth and master_id fields added
...
depth and master_id fields added
2014-06-17 13:05:03 +02:00
49163a4c43
Merge branch 'develop' into MAX-11
2014-06-16 19:53:19 +03:00
4f03c775e5
sescmd_cursor_reset didn't reset cursor's property pointer which made reset ineffective.
2014-06-16 13:40:45 +03:00
189793f992
Clean up some compiler warnings
2014-06-16 08:40:04 +01:00
9f6a1061c6
Config fix
2014-06-16 08:10:34 +01:00
850603171b
Improvements to CLI commands and client
2014-06-16 07:57:12 +01:00
70ba1f028a
Fixed bug in generation of execution time in report
2014-06-15 23:03:41 +01:00
0200ca4e24
Some things weren't switched off from product build.
2014-06-16 00:31:14 +03:00
5bcae64538
When protocol closes DCB it calls dcb_close instead of dcb->func.close. dcb_close then calls dcb->func.close. This is now changed to all protocols and routers.
...
Rwsplit handles ERRACT_NEW_CONNECTION by clearing backend reference, removing callbacks and associating backend reference with new backend server. If it succeeds and the router session can continue, handleError returns true. Otherwise false. When ever false is returned it means that session must be closed.
Rwsplit now tolerates backend failures in a way that it searches new backends when monitor, backend, or client operation fails due to backend failure.
2014-06-15 23:44:07 +03:00
8103ac6052
Merge branch 'develop' into MAX-65
2014-06-14 12:54:08 +01:00
719503e471
Addition of new client utility, maxadmin.
...
Supporting protocol for the admin interface
New routing module, cli, which shares source with debugcli
Tidyup output of lsit commands
2014-06-13 23:40:07 +01:00
09d20d1059
Modified dcb_call_foreach so that it doesn't hold spinlock (dcbspin) continuously because it caused deadlock when new slaves were tried to connect with.
...
Fixed a few smallish things.
2014-06-13 14:52:04 +03:00
dfc9141a38
Whenever monitored server's state changes, a callback, router_handle_state_switch is called for each DCB in MaxScale session. The DCB referring to the server in question will be passed as parameter to backend DCB's hangup function.
...
The logic that solves the situation is not in place yet.
2014-06-13 13:30:50 +03:00
480c842308
Improved diagnostics in filters
2014-06-13 08:50:28 +01:00
1868210a59
Enhancements to topfilter and qlafilter
...
Documentation for topfilter and qlafilter
2014-06-13 08:35:23 +01:00