Commit Graph

1177 Commits

Author SHA1 Message Date
aa828e8751 Added missing comment to get_root_master
Added missing comment to get_root_master
2014-06-30 09:00:43 +02:00
0743177fbd Fixed reload with -HUP
Fixed reload with -HUP and added _TERM (that is default anyway)
2014-06-29 18:37:05 +02:00
4b0d66f66a Added default MAXSCALE_BASEDIR
Added default /usr/local/skysql/maxscale for MAXSCALE_BASEDIR
2014-06-29 17:57:06 +02:00
ee582bf2b2 write MaxScale PID into pidfile
write MaxScale PID into pidfile
2014-06-29 17:53:25 +02:00
3b14c780ad LSB version of maxscale init script
LSB version of maxscale init script
2014-06-29 15:40:30 +02:00
fc68996701 First implementation LSB compatibility
First implementation LSB compatibility
2014-06-28 23:05:45 +02:00
4f47f09207 maxscale start script
maxscale start script
2014-06-28 18:09:36 +02:00
25cc7452c0 Merge branch 'develop' of github.com:skysql/MaxScale into develop 2014-06-27 18:47:38 +01:00
621608d306 Updated documentation 2014-06-27 18:47:20 +01:00
32526d31b6 code cleanup
code cleanup
2014-06-27 18:14:46 +02:00
5cbc7b9f7d root server IN_MAINT returns NULL to caller
the replication tree returns NULL if the root server is maintenance mode
2014-06-27 17:55:46 +02:00
3a299a9ed8 get_replication_tree checks for SERVER_IS_DOWN
get_replication_tree checks for SERVER_IS_DOWN, this will produce a
replication tree even with servers in SERVER_IN_MAINT state
2014-06-27 17:16:38 +02:00
a25b757134 Merge branch 'develop' into MAX-90
Conflicts:
	server/core/server.c
	server/include/server.h
	server/modules/routing/readconnroute.c
2014-06-27 16:04:39 +01:00
ce2d20b70c Fixed printf format 2014-06-27 15:52:57 +01:00
3e83174cd8 Log messages updated for Replication heartbeat
Log messages updated for Replication heartbeat
2014-06-27 15:10:25 +02:00
111693775b master_id and node_id are long vars
master_id and node_id are long vars
2014-06-27 14:21:12 +02:00
96b6454e13 fix compile warnings
fix compile warnings
2014-06-27 14:11:57 +02:00
875b464c22 pending_status added to MONITOR_SERVERS
pending_status added to MONITOR_SERVERS
2014-06-27 14:04:02 +02:00
380f5b6bf3 Merge branch 'develop' into MAX-59 2014-06-27 13:58:12 +02:00
4f12e123c5 Removed SERVER parameter from dcb_call_foreach
Removed SERVER parameter from dcb_call_foreach
2014-06-27 13:51:40 +02:00
475e408551 remove tmporal files from debian dir 2014-06-27 14:45:55 +03:00
c2b20eab84 add debian files 2014-06-27 14:44:55 +03:00
fdcdc064b1 Added server pending states in monitor
server pending states are now saved and copied to server status before
monitor thread sleep
2014-06-27 13:38:35 +02:00
eee2ad7143 Merge branch 'develop' into MAX-90
Conflicts:
	server/core/service.c
2014-06-27 12:15:30 +01:00
25d4f784bc Implementation of server routing generic functionality and for readconnrouter 2014-06-27 12:07:47 +01:00
237bacd131 Merge branch 'develop' into MAX-59 2014-06-27 11:07:55 +02:00
de5d4fda8b Merge of new user interface changes 2014-06-27 09:57:39 +01:00
c824e9fad6 Merge branch 'develop' into MAX-111 2014-06-27 09:52:00 +01:00
7cdef05710 Fix issue with OK being split across multiple reads 2014-06-27 09:27:43 +01:00
c13275c0e7 merge from develop
merge from develop
2014-06-26 21:27:22 +02:00
52646a9942 Fix compile warning
Fix compile warning
2014-06-26 21:22:33 +02:00
a351a5eb09 fix compile warning
fix compile warning
2014-06-26 21:17:49 +02:00
1f77f37fbb fix type in path in .spec 2014-06-26 21:16:43 +03:00
eb5912239a Documentation for MaxAdmin - rewrite of CLI command guide 2014-06-26 17:23:33 +01:00
f246219beb Fix compile errors and warnings
Fix compile errors and warnings
2014-06-26 18:20:33 +02:00
ace2550d93 Merge branch 'develop' into MAX-111 2014-06-26 16:52:57 +01:00
031294f655 Diagnostic update 2014-06-26 16:52:10 +01:00
f96b762478 User interface improvements
Addition of enable/disable heartbeat, enable/disable root, list monitors,
show monitors

Better filter diagnostic output
2014-06-26 16:46:19 +01:00
8808fd7e47 Some debug messages removed
Some debug messages removed
2014-06-26 17:18:53 +02:00
1dbb4b1780 removed duplicated routine code
removed duplicated routine code
2014-06-26 17:12:08 +02:00
1a33277f72 Merge from develop
Merge from develop
2014-06-26 17:08:21 +02:00
4d2e43a2d9 code cleanup and documentation
code cleanup and documentation
2014-06-26 16:56:21 +02:00
10ac2cb6e6 add /etc/init.d/maxscale to the package 2014-06-26 15:23:22 +03:00
d8ac0467de Added comments for SHOW SLAVE STATUS
Added comments for SHOW SLAVE STATUS
2014-06-26 14:14:37 +02:00
dbf12f6183 Added new rules for Master selection
Added new rules for Master selection using replication tree
2014-06-25 18:38:33 +02:00
5a65bc2aaa get_root_master routine available
get_root_master routine available
2014-06-25 17:19:14 +02:00
22827e7c8d Merge pull request #6 from skysql/MAX-99
Max 99
2014-06-25 18:06:22 +03:00
1d1da398d4 Merge branch 'develop' into MAX-99
Conflicts:
	server/modules/routing/readwritesplit/readwritesplit.c
2014-06-25 17:50:29 +03:00
dff18bf9bb Necessary checks and macros for prepared statement support implementation. 2014-06-25 17:37:37 +03:00
7ff14e23a5 Support for prepared statement, namely support for following comands : COM_STMT_PREPARE, COM_STMT_EXECUTE, COM_STMT_SEND_LONG_DATA, COM_STMT_RESET, COM_STMT_CLOSE, SQLCOM_PREPARE, SQLCOM_EXECUTE, SQLCOM_DEALLOCATE_PREPARE (DEALLOCATE/DROP PREPARE stmt).
All prepare commands are executed in every backend server currently connected.

All executes are routed to master. If stmt type was recorded in prepare phase in rwsplit router, read-only stmts could be routed to slaves.

COM_STMT_PREPARE gets arbitrary number of response packets from backend database. Since statements are prepared in every backend server and only one multi-packet response can be replied to client, redundant multi-packet responses are discarded. This is done in router. Mechanisms from session command handling are utilized with little changes: router must identify when response consists of multiple packets so that it knows to calculate the number of packets in response and that it is able to discard correct number of packets.

Information to the reply-handling router is provided by backend protocol, which includes a ordered list of commands of commands sent to protocol-owning backend server. A command is stored to protocol struct in mysql_backend.c:gw_MySQLWrite_backend if the statement buffer's type has GWBUF_TYPE_SINGLE_STMT set in mysql_client.c:route_by_statement. GWBUF_TYPE_SINGLE_STATEMENT indicates that there is single statement in the buffer, as opposite to Read Connection router, which accepts streaming input from client.
2014-06-25 17:15:46 +03:00