806 Commits

Author SHA1 Message Date
MassimilianoPinto
1a4e1b5ef1 branch update
branch update
2014-03-28 16:26:06 +01:00
Mark Riddoch
efebd27d31 Galera HA Connection Router
Example Galera Connection router for HA environments. Code produced as
part of router writers tutorial.
2014-03-28 14:48:21 +00:00
Mark Riddoch
f544d0df3c Release Notes 0.5
MaxScale 0.5 alpha release notes
2014-03-28 14:46:38 +00:00
MassimilianoPinto
b08c4271eb fix for bug 375 2014-03-26 10:31:53 +01:00
MassimilianoPinto
ad6566fb00 Shell scripts for binary and source tarballs
Shell scripts for binary and source tarballs
2014-03-25 09:32:35 +01:00
VilhoRaatikka
d660d3590d Cannot compile in readwritesplit.c 2014-03-20 20:30:03 +02:00
VilhoRaatikka
288ca68677 Changed variable type which includes information of query type returned by query classifier.
As a consequence, if autocommit is enabled, active transaction(s) are implicitly committed and MaxScale detects that implicit commit.
2014-03-20 12:15:57 +02:00
VilhoRaatikka
fcf7d37114 Added support for router option 'synced' in read write split router. If router option is specified, backend server must be in 'joined' state to be eligible backend candidate. 2014-03-19 22:29:02 +02:00
VilhoRaatikka
5ef657d833 Corrected some error messages. Added checking for protocol state in gw_MySQLWrite_backend. If protocol is in MYSQL_AUTH_FAILED state (=authentication is comleted and failed) write to backend is discarded. 2014-03-19 14:36:47 +02:00
VilhoRaatikka
4d1f3f4efc Merge branch 'MAX-10' of https://github.com/skysql/MaxScale into MAX-10
Conflicts:
	server/modules/protocol/mysql_backend.c
2014-03-19 10:55:14 +02:00
VilhoRaatikka
d6a9a5c1d0 MAX-10, Transaction support for MaxScale.
Naive implementation, which routes all statements to master between BEGIN|START TRANSACTION <options> and ROLLBACK|COMMIT
2014-03-18 23:41:32 +02:00
VilhoRaatikka
709ab19744 MAX-10, Transaction support for MaxScale.
Naive implementation, which routes all statements to master between BEGIN|START TRANSACTION <options> and ROLLBACK|COMMIT .
2014-03-18 23:35:41 +02:00
VilhoRaatikka
d10b240ae2 Changed back the first part of gw_MySQLWrite_backend so that it is protected by dcb->authlock which must wait until authentication phase is complete. If authentication fails, the error is handled before next query starts its execution. 2014-03-18 17:48:57 +02:00
VilhoRaatikka
d7e9978ac1 Changed back the first part of gw_MySQLWrite_backend so that it is protected by dcb->authlock which must wait until authentication phase is complete. If authentication fails, the error is handled before next query starts its execution. 2014-03-18 17:00:43 +02:00
VilhoRaatikka
35c460457a Fixed compile error. 2014-03-18 11:21:51 +02:00
VilhoRaatikka
526762bcc7 Fixed reference to backend servers. 2014-03-18 10:54:19 +02:00
VilhoRaatikka
d7b161831b Merge branch 'SESvars' of https://github.com/skysql/MaxScale into SESvars 2014-03-18 10:49:24 +02:00
VilhoRaatikka
512bd9f3ff Added list of reply message variants that are handled. 2014-03-18 10:48:32 +02:00
VilhoRaatikka
72a17e5fe2 Merging SESvars with develop. 2014-03-18 10:28:34 +02:00
VilhoRaatikka
c356b396a6 Merge branch 'SESvars' of https://github.com/skysql/MaxScale into SESvars
Conflicts:
	server/core/dcb.c
	server/core/poll.c
	server/modules/include/mysql_client_server_protocol.h
	server/modules/routing/readwritesplit/readwritesplit.c
2014-03-18 10:28:06 +02:00
VilhoRaatikka
67d9b3afb9 Fixed bug in how response messages from backends were handled. Now messages are examined if session command cursor is active
. That means that (at least) the first packet  in the message is response to session command. Then if the response is alread
y forwarded to client it is discarded. Otherwise it is routed to client and the command is marked as responded so that the o
ther backend knows to discard its duplicate response.
2014-03-17 22:26:32 +02:00
MassimilianoPinto
1926181119 Unix socket support 2014-03-17 17:02:33 +01:00
MassimilianoPinto
68e96fb0fc Unix domain socket support 2014-03-17 16:57:51 +01:00
MassimilianoPinto
107b810c45 Unix socket support 2014-03-17 16:19:55 +01:00
MassimilianoPinto
d1c4eabbe8 fix for bug 216 2014-03-17 15:50:17 +01:00
MassimilianoPinto
ae2379be31 Server connection counter is updated in closeSession
Server connection counter is updated in closeSession
2014-03-17 11:26:35 +01:00
VilhoRaatikka
90f701be8e readwritesplit.c : router is changed so that it guarantees to keep the execution order of session commands and queries when they are routed to backend servers. In the same way it maintains the order of response packets and discards duplicate responses.
For each session command a sescmd property is created and added to the end of list of session commands. List is owned by router client session and it includes all session commands from the beginning of router session.
Router maintains an individual session command cursor for each backend. A cursor refers to the first session command which the corresponding backend server haven't yet responded yet.
When response message arrives at any time from backend, first it is checked whether backend's cursor is active. Cursor is active if a session command is routed to backend and the backend haven't responded to it yet. If cursor is active, next it is checked whether the current session command property has been responded by other backend. If both are true, then response message is sent to client as is. If session command response is routed to client already, the arrived response is discarded.
2014-03-16 19:43:49 +02:00
MassimilianoPinto
9b833b9464 Added 'socket' to the parameter list and moved EPOLLERR and EPOLLHUP after processing of EPOLLIN and EPOLLOUT.
Added 'socket' to the parameter list and moved EPOLLERR and EPOLLHUP
after processing of EPOLLIN and EPOLLOUT.
2014-03-14 16:43:41 +01:00
VilhoRaatikka
a3f7eebdc9 Extended session command support to cover COM_CHANGE_USER, and COM_INIT_DB.
This implementation doesn't guarantee execution order between session commands and queries
if other backend server lags behind in session command execution.

In poll.c : moved processing of EPOLLERR and EPOLLHUP after processing of EPOLLIN and EPOLLOUT.
This ensures that COM_QUIT messages are read and routed forward before signals arrive (from local client/backend).
2014-03-14 13:25:37 +02:00
VilhoRaatikka
cb6a976555 Router has now capability value which currently tells whether router session expects stream or individual, complete statements. With read con
nection router stream is used and with read/write split router individual statements are passed to router.
Added new function to ROUTER_OBJECT : uint8_t (*getCapabilities)(ROUTER *instance, void* router_session); which is implemented in every route
r.

Added support for multi-statement packets in rwsplit router. In other words, if network packet includes multiple mysql statements, they are separated and passed to router one by one.

Multi-packet statements (those which exceeds network packet boundaries) are _not_ supported yet.
2014-03-11 23:12:11 +02:00
MassimilianoPinto
9a11a3241b UNIX socket support
UNIX socket support
2014-03-11 13:00:34 +01:00
Mark Riddoch
bef81ac7a6 Update README 2014-03-10 13:24:20 +00:00
VilhoRaatikka
c28892323a Added support for session commands to readwrite split router.
Added support for multi-statement packets.

This is an intermediate commit to save work. Code is not cleaned and there are debug prints and prototypes to be removed.
2014-03-07 20:53:33 +02:00
MassimilianoPinto
4f60625a54 Server connection counter is updated in closeSession
Server connection counter is updated in closeSession
2014-03-06 08:45:51 +01:00
MassimilianoPinto
895ef4548e MySQL authentication with hostname 2014-03-04 11:23:38 +01:00
MassimilianoPinto
3413828242 MySQL authentication with hostname 2014-03-04 11:23:20 +01:00
MassimilianoPinto
963c61a83b Merge branch 'master' of https://github.com/skysql/MaxScale 2014-03-04 11:21:16 +01:00
MassimilianoPinto
f5a687d30b MySQL authentication with hostname 2014-03-04 11:21:06 +01:00
MassimilianoPinto
7154a3f742 Merge branch 'master' of https://github.com/skysql/MaxScale 2014-03-04 11:20:53 +01:00
MassimilianoPinto
aa1f5adc9a MySQL authentication with hostname 2014-03-04 11:20:41 +01:00
MassimilianoPinto
1a2521f213 Merge branch 'master' of https://github.com/skysql/MaxScale 2014-03-04 11:20:03 +01:00
MassimilianoPinto
5488a2862d MySQL authentication with hostname 2014-03-04 11:19:48 +01:00
MassimilianoPinto
ad56bed497 Merge branch 'master' of https://github.com/skysql/MaxScale 2014-03-04 11:19:24 +01:00
MassimilianoPinto
7fddb625d3 MySQL authentication with hostname 2014-03-04 11:18:50 +01:00
MassimilianoPinto
e48e634675 Merge branch 'feature-MAX-2' into develop for Documentation update 2014-03-04 10:44:57 +01:00
MassimilianoPinto
32d3b0492d Documentation update for MySQL authentication
Documentation update for MySQL authentication
2014-03-04 10:44:05 +01:00
MassimilianoPinto
415221f0c4 Documentation update
Documentation update
2014-03-03 18:34:27 +01:00
MassimilianoPinto
c9cdb063ae Merge branch 'master' into develop 2014-03-03 17:55:16 +01:00
MassimilianoPinto
0a0463c42c Fix for bug-406
Fix for bug-406 in dcb_alloc()
2014-03-03 17:54:39 +01:00
MassimilianoPinto
6322586832 Merge branch 'master' into feature-MAX-2 2014-03-03 17:43:52 +01:00