442 Commits

Author SHA1 Message Date
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
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
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
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
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
Mark Riddoch
df1ff25be4 Changes for file system full detection 2014-12-10 09:07:14 +00:00
Mark Riddoch
0fb1918887 Improved error handlign for binlog directory and files 2014-12-09 09:55:05 +00: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
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
Mark Riddoch
cce35d9035 Add event name in show service 2014-12-05 13:49:41 +00:00
Mark Riddoch
a0cebae0ec Make building the binlog router conditional 2014-12-05 11:43:06 +00:00
Mark Riddoch
e102d56e69 Merge branch 'blr' into release-1.0GA
Conflicts:
	server/modules/protocol/mysql_backend.c
	server/modules/routing/binlog/blr_master.c
2014-12-05 11:42:02 +00:00
Mark Riddoch
2b998eb17f Merging binlog router into beta refresh 2014-12-05 11:30:03 +00:00
Mark Riddoch
4db86a5520 Merge branch 'release-1.0GA' of https://github.com/mariadb-corporation/MaxScale into release-1.0GA 2014-12-04 16:57:57 +00:00
Mark Riddoch
36aea7454f Updates for new logging definitions 2014-12-04 16:56:33 +00:00
Markus Makela
e4c379bbdc Fix to bug 583 http://bugs.mariadb.com/show_bug.cgi?id=583
Changed rwsplit.sh to explicitly use /bin/bash
2014-12-03 19:41:06 +02:00
VilhoRaatikka
b106560317 Fix to bug # 634, http://bugs.skysql.com/show_bug.cgi?id=634
COM_SHOW_SLAVE_STAT wasn't classified but it was treated as 'unknown' and thus routed to master.
2014-12-03 13:27:31 +02:00
VilhoRaatikka
1bfedbee1d Fix to bug #629, http://bugs.skysql.com/show_bug.cgi?id=629
Master was selected for routing target even there was a slave available.
2014-11-28 14:17:35 +02:00
VilhoRaatikka
9aa828cd9b Added debug assertions to catch wrong DCB usage 2014-11-27 22:04:34 +02:00
VilhoRaatikka
3941f5c31d Added debug trace 2014-11-27 19:48:27 +02:00
VilhoRaatikka
3e18e091c1 Fixed unreported bug in log_manager where a terminating character was added in the middle of log message. 2014-11-27 16:53:50 +02:00
Mark Riddoch
863a30c969 Merge branch 'blr' of https://github.com/mariadb-corporation/MaxScale into blr
Conflicts:
	server/core/gateway.c
2014-11-26 08:47:50 +00:00
Mark Riddoch
268f2950b7 Missed lgging externs 2014-11-21 15:07:41 +00:00
Mark Riddoch
0dc5dca858 Added externs for Vilho's logging changes 2014-11-21 15:07:10 +00:00
Mark Riddoch
ba44605cb0 Changes for FDE events 2014-11-21 15:01:38 +00:00
Markus Makela
2e3fb9cbd3 Changed the 'seslog' command to 'sessionlog' in the telnet client. 2014-11-19 16:55:18 +02:00
Markus Makela
2e456c7348 Changed the order of help messages about seslog command 2014-11-19 15:22:12 +02:00
Mark Riddoch
e67ded72a0 Merge branch 'develop' of https://github.com/mariadb-corporation/MaxScale into develop 2014-11-19 12:07:13 +00:00
Mark Riddoch
d3c8770852 Merge branch 'blr' into develop
Conflicts:
	client/maxadmin.c
	server/core/CMakeLists.txt
	server/core/dcb.c
	server/core/gateway.c
	server/core/poll.c
	server/core/test/CMakeLists.txt
	server/core/test/makefile
	server/include/poll.h
	server/modules/routing/debugcmd.c
2014-11-19 12:00:55 +00:00
VilhoRaatikka
2c87edfe27 Merge branch 'develop' of https://github.com/mariadb-corporation/MaxScale into develop 2014-11-19 13:28:40 +02:00
VilhoRaatikka
9cc0e1316c Fix to #594, http://bugs.skysql.com/show_bug.cgi?id=594
Changes to readwritesplit.c:get_dcb caused regression
2014-11-19 13:27:43 +02:00
Markus Makela
c3439027d4 Fixed a missing session list iteration from debugcmd.c 2014-11-19 13:07:37 +02:00
Markus Makela
2556097a98 Added commands to debugcmd.c that enable and disable logs for a single session.
Added the session id to dprintAllSessions and dprintSession output.
2014-11-19 12:25:33 +02:00
Markus Makela
a65d8cd525 Merge branch 'develop' of https://github.com/mariadb-corporation/MaxScale into develop 2014-11-19 09:38:22 +02:00
Markus Makela
98390e89cc Added dummy cli commands that would enable and disable session logs. 2014-11-19 09:37:24 +02:00
VilhoRaatikka
fd11e6a7f5 Session-specific logging. Added functions
void session_enable_log(SESSION* ses, logfile_id_t id)
and
void session_disable_log(SESSION* ses, logfile_id_t id)

Which switch specific log type on/off if the log type in question is not generally enabled.

Each thread carries a thread-specific struct log_info_t which includes members for current session id and bitfield for enabled log types for the current session. That information is checked before actual log write functions are called.

Each file where session-specific logging is used, must include the following exports:

/** Defined in log_manager.cc */
extern int            lm_enabled_logfiles_bitmask;
extern size_t         log_ses_count[];
extern __thread log_info_t tls_log_info;
2014-11-19 00:08:59 +02:00
VilhoRaatikka
1c4ffd2599 Fix to bug #597, http://bugs.skysql.com/show_bug.cgi?id=597
Changed the order of include directives in query_classifier.cc
2014-11-17 14:55:13 +02:00
VilhoRaatikka
34b155b6fe Merge branch 'develop' of https://github.com/mariadb-corporation/MaxScale into develop 2014-11-17 13:58:18 +02:00
VilhoRaatikka
c9b679359f Made RWSplit to use slave selection criteria also during client session. Previously the criteria was use when slaves were selected for use of client session. 2014-11-17 13:40:18 +02:00
Markus Makela
a96f2fe57b Fixed some typos and testing messages from CMake output. 2014-11-17 12:57:07 +02:00
VilhoRaatikka
4f136fa4d2 Fixed backend selection logic in get_dcb. If slave is not found write a warning to error log and fall through to master selection. If master has changed or previous master's state has changed, routing fails. 2014-11-15 23:57:09 +02:00
VilhoRaatikka
419fda5514 Fixed false positive debug assertion 2014-11-14 23:13:40 +02:00
VilhoRaatikka
e790437fc0 Fixed debug assert. If session is closed its router session pointer is nullified and it is not error. 2014-11-14 22:35:23 +02:00
VilhoRaatikka
18c12cfee6 Merge branch 'develop' of https://github.com/mariadb-corporation/MaxScale into develop 2014-11-14 20:48:50 +02:00