Mark Riddoch
5fa87776b0
Fixes for Coverity bugs
2014-11-20 16:04:22 +00:00
Markus Makela
a65b9fa8b3
Fixes to Coverity defects: 72662 82143 82144 82145 82348 82349
2014-11-20 06:44:43 +02:00
Mark Riddoch
43ed77b52b
Bug 515 Conditional arguemnt to gw_write
2014-11-19 16:43:21 +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
Mark Riddoch
6cbbf7260f
Improved logging and diagnostics
2014-11-19 10:49:40 +00: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
a30fc0c787
MAX-328, Add session identifier to trace log entries. Session id is given to session in session_alloc and stored to thread's local storage variable when thread picks a new event from epoll_wait.
2014-11-17 23:27:14 +02:00
VilhoRaatikka
8c1e7172f3
Added debug logging for #615
2014-11-14 20:48:33 +02:00
VilhoRaatikka
8311d02f61
Removed unnecessary local variables for errno since it is thread safe.
2014-11-11 14:51:55 +02:00
VilhoRaatikka
061fa62d29
Fixes to Coverity issues 77197 (mysql_common.c, dcb.c, mysql_client.c, skygw_debug.h), 72654 (poll.c), 72756 (mysql_backend.c), 72744 (mysql_backend.c), 77197 (mysql_common.c), 72746 (mysql_common.c), 72676 (mysql_common.c), 72705 (readwritesplit.c), 72697 (readwritesplit.c), 72652 (skygw_debug.h)
2014-11-11 14:10:06 +02:00
VilhoRaatikka
9a5168c3e8
Put errors ganerating code behind FAKE_CODE macro, which is not defined by default in any build.
2014-11-10 15:22:08 +02:00
VilhoRaatikka
62270412cf
readwritesplit.c: prevent switching the master during session. Added logging to cases where master has changed.
...
Moved DCB's member errhandle_called behing DEBUG flags to Release build. It shows if handleError is called for a DCB and makes it possible to avoid redundant calls.
2014-11-10 14:15:32 +02:00
VilhoRaatikka
8b91a5f078
Fix to bug #610 , http://bugs.mariadb.com/show_bug.cgi?id=610
...
Fixes to Coverity issues 72728, 72755, 72745
2014-11-05 14:41:04 +02:00
VilhoRaatikka
6ed8836b15
dcb.c:dcb_close prevent redundant execution of dcb_close for one DCB
2014-11-03 22:07:54 +02:00
VilhoRaatikka
9ccbab1899
poll.c:dcb_close Don't call poll_remove_dcb anymore if DCB has already been removed from poll set.
...
mysql_backend.c, mysql_client.c free error message GWBUF after calling handleError
readconnroute.c:handleError send error message to client before returning.
readwritesplit.c:handleError don't free error message buffer anymore since the caller of handleError frees it.
2014-11-01 20:00:59 +02:00
VilhoRaatikka
00fded016b
Fixes to Coverity tasks : 73267, 72686, 72672
...
Cleaned up warnings, and added checks to malloc return values and error log writes in case of failures.
2014-10-31 15:25:59 +02:00
Mark Riddoch
70672e43a1
Addition of backoff process for master reconnect
...
Housekeeper task display
2014-10-23 10:46:55 +01:00
Mark Riddoch
f459bdfe04
Add new command to view the event queue
...
Fixes to fake poll events to improve fairness
2014-10-17 08:36:32 +01:00
counterpoint
32d66e6f84
Minor modifications for testing.
2014-10-03 17:24:46 +01:00
Markus Makela
b0683d9b4d
Updated the licensing year from 2013 to 2013-2014
2014-10-01 14:37:12 +03:00
Markus Makela
f4e591e382
Changed 'SkySQL Gateway' to 'MariaDB Corporation MaxScale'
2014-09-30 13:15:03 +03:00
Markus Makela
c344231f80
Renamed all occurences of SkySQL to MariaDB Corporation
2014-09-30 13:02:10 +03:00
Mark Riddoch
0d19857a1f
Fix for debug build
2014-09-25 14:56:54 +01:00
Mark Riddoch
63252e94f2
Merge branch 'release-1.0beta-refresh' into blr
...
Fix conflict and remove some redundant code
Conflicts:
server/core/poll.c
2014-09-24 16:49:12 +01:00
Mark Riddoch
92ce8a47ba
Introduction of a new polling mechanism to make the thread usage more fair and avoid
...
having busy DCB's being able to block execution of events on less busy DCBs
2014-09-24 16:34:34 +01:00
Mark Riddoch
d561ccb089
Merge branch 'release-1.0beta-refresh' into blr
2014-09-19 13:42:37 +01:00
Mark Riddoch
5721df5176
Add initial file number
...
Fix for short binlog file names in rotate
Socket buffering changes
2014-09-19 13:40:38 +01:00
Mark Riddoch
2402d55de6
Some general tidyup plus addition of code to block zombie processing
...
if epoll_wait returned multiple descriptors
2014-09-19 10:50:54 +01:00
VilhoRaatikka
0f3db1c091
First changes for fixing #548 , http://bugs.skysql.com/show_bug.cgi?id=548
...
dcb.c:dcb_process_zombies:added new parameter which tells what DCB the thread will use after calling dcb_process_zombies. Thus, processing that DCB is skipped.
readwritesplit.c:routeQuery:removed double free call for query buffer.
2014-09-17 18:02:44 +03:00
VilhoRaatikka
c7bf6b66bf
Fix to #492 , http://bugs.skysql.com/show_bug.cgi?id=492
...
Added comments
2014-09-15 10:34:42 +03:00
MassimilianoPinto
8b5b4a17fe
Merge from Z3
...
Merge from Z3
2014-09-11 12:51:16 +02:00
MassimilianoPinto
7245d1baa1
blr branch merge
...
blr branch merge
2014-09-11 12:20:42 +02:00
Mark Riddoch
c273988e51
Fixed for EPOLLHUP events
...
Possible double free in maxscaled on close
binlog router debugging/tracing
2014-09-05 17:29:17 +01:00
VilhoRaatikka
cda39a62fb
Fixes to
...
Includes imprvements to hints processing. If hint can't be followed query is routed possibly to slave, and eventually to master if other attempts fail.
2014-09-03 22:09:50 +03:00
VilhoRaatikka
9ce36d7242
Merge branch 'master' of https://github.com/skysql/MaxScale
2014-08-29 14:46:06 +03:00
Mark Riddoch
81e1dd8719
Merge branch 'develop' into blr
...
Add instrumentation
Remove mutexes
Improve gwbuf_append performance
Conflicts:
server/core/dcb.c
server/modules/protocol/mysql_backend.c
2014-08-28 11:41:26 +01:00
Mark Riddoch
baa655182c
Merge branch 'master' into develop
2014-08-20 11:07:55 +01:00
Mark Riddoch
d6a2ef6996
Misc fixes to doxygen comments
2014-08-19 13:22:40 +01:00
VilhoRaatikka
902004c1ee
Fix to bug #463 , http://bugs.skysql.com/show_bug.cgi?id=463
...
mysql_common.c:gw_MySQL_get_next_packet didn't handle case where an insert command followed by alter table in the same read buffer. It shouldn't been possible without multi-statement being set.
2014-08-14 22:33:57 +03:00
VilhoRaatikka
77e5525436
mysql_client.c:gw_error_client_event & gw_client_hangup_event: added session state check, if session is already closing, don't start redundant call to dcb_close.
...
mysql_common.c:mysql_protocol_done: added protocol state check. Used not to check it which caused double free of allocated memory.
2014-08-14 15:15:22 +03:00
VilhoRaatikka
a68d83ff7f
Moved error messages about broken pipe to DEBUG build since in cases we've seen it is due to socket closing in same host. Other case is that MaxScale attempts to write COM_QUIT (ending message) to socket that other thread already closed.
...
Added counter clean-up code to readwritesplit closeSession. If operation counters have leaked, that is, due to some error in query routing some counter have been left positive, it is zeroed at session ending. This ensures that there is no garbage in global counter even if individual session wouldn't clean up its counters.
2014-07-03 12:12:21 +03:00
VilhoRaatikka
e944ae2e70
http://bugs.skysql.com/show_bug.cgi?id=453
...
Fixed bug in session command resul handling. In case where backend sent error message the session command cursor wasn't updated properly.
Added check to bref_clear_state, if bref's waiter counter would go negative, decrement to global operation counter is skipped.
2014-07-03 00:43:30 +03:00
MassimilianoPinto
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
Mark Riddoch
ace2550d93
Merge branch 'develop' into MAX-111
2014-06-26 16:52:57 +01:00
Mark Riddoch
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
VilhoRaatikka
1d1da398d4
Merge branch 'develop' into MAX-99
...
Conflicts:
server/modules/routing/readwritesplit/readwritesplit.c
2014-06-25 17:50:29 +03:00
VilhoRaatikka
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
VilhoRaatikka
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
Mark Riddoch
a652e875b5
Support for multipacket statements
...
Remove double free in cloned DCB's
2014-06-24 17:59:29 +01:00
Mark Riddoch
e650930487
Cleanup up branch session on close.
2014-06-23 10:10:04 +01:00