5338318900
Improve error message when DCB has no session pointer in poll loop.
2015-08-28 17:25:41 +01:00
70d82fd45e
Fixed compilation problems.
2015-08-26 18:33:46 +03:00
72b301785b
Complete implementation of error logging when no session pointer in DCB.
2015-08-25 12:25:36 +01:00
e7c74c39cf
Fix bug in persistent connections; add code to check for DCB session pointer in poll loop before invoking processing.
2015-08-25 12:19:02 +01:00
8425deab18
Fixed bugs by moving setting of thread bit mask from polling to DCB closing, fixed other mistakes.
2015-08-25 11:46:25 +01:00
12922225b8
Remove redundant DCB state DCB_STATE_FREED, remove obsolete assertion from poll.c, tidy up.
2015-08-25 09:11:44 +01:00
37ac158791
Changes to try to eliminate setting dcb->session to NULL with risk of crashing system.
2015-08-24 12:12:43 +01:00
5e2e2585ad
Fix mistakes.
2015-08-23 16:43:07 +01:00
1baf693b02
First changes for lazy session creation.
2015-08-23 16:39:08 +01:00
087c2fca46
Block out new test for the time being.
2015-08-23 10:09:42 +01:00
6b2d90fc50
Add check so DCB can't be added to poll list without a linked session; small safety improvement in session; tidying.
2015-08-23 09:34:26 +01:00
53c3cc4b41
Fix mistake; tidy format.
2015-08-22 19:14:40 +01:00
139d4829a9
Further refinement of poll_remove_dcb function to ensure proper delayed release of a DCB that may be in the poll list and should only be destroyed after all threads have completed any operations on it; add comments describing implementation limitations in the bitmask processing.
2015-08-20 06:58:05 +01:00
38f78c7239
Fix possible threading problem.
2015-08-19 17:23:49 +01:00
98ab399e6e
Changed sprintf calls to snprintf calls and fixed compiler warnings.
2015-08-18 10:50:48 +03:00
260f829046
Add blank line to start of Document Contents (link otherwise not rendered correctly by web site); move upgrade documents into their own directory; modify poll.c to fix problem relating to cloned DCBs.
2015-07-15 08:35:50 +01:00
78eab19c62
Fixed compiler warnings.
2015-07-14 17:13:09 +03:00
3992f262ca
Fixed Coverity defects
2015-07-14 16:17:50 +03:00
3ddbe47f8b
Minor tidy up, including removing obsolete MUTEX_BLOCK.
2015-07-13 14:32:54 +01:00
ef6728344e
Fixed failures to close cloned DCBs.
2015-07-13 13:11:43 +03:00
77db46359e
Change poll control failures to use SIGABRT rather than assert(false).
2015-07-08 08:52:19 +01:00
4c8aa02c31
Finalise comments; change abort from assert(false) to raise(SIGABRT).
2015-07-07 16:57:13 +01:00
be789855ee
Add lines to revision history.
2015-07-07 16:57:12 +01:00
fffd8fb73a
Unify DCB close processing to single function dcb_close. Remove dcb_add_to_zombieslist (incorporating logic into dcb_close). Alter logic so that DCB that is just allocated will still go to zombie list if dcb->fd is not closed.
2015-07-07 16:57:12 +01:00
77d374cd52
Fix mistake.
2015-07-07 16:57:12 +01:00
18a95eeb71
Simplify adding and removing DCBs from polling, improve error handling. Remove dcb_set_state functions as not adding value.
2015-07-07 16:57:12 +01:00
a72f462e2d
Fixes for MXS-196 and other related problems.
2015-07-07 16:57:12 +01:00
e14b29baf9
Fix to MXS-212: https://mariadb.atlassian.net/browse/MXS-212
...
The listener DCB is now properly closed instead of just being removed from the poll set.
2015-06-21 12:51:54 +03:00
04b969efaa
Fixed poll.c include with old header name.
2015-03-12 07:39:39 +02:00
63d83cd85d
Monitor API 2.0.0 implemented.
2015-03-11 15:18:55 +02:00
880adca73e
Merge branch 'develop' into MAX-324
2015-03-05 10:45:48 +02:00
1b0fd4576a
Merge branch 'maxinfo' into develop
...
Conflicts:
server/core/service.c
server/core/session.c
server/include/session.h
2015-03-04 11:33:00 +02:00
a022775342
Addition of show eventtimes and /events/times URL to maxinfo
2015-02-20 11:53:47 +00:00
8eb14235d1
Addition of DCB and Poll statistics in show status output
2015-02-20 10:05:50 +00:00
a2bff1dcea
Merge branch 'develop' into MAX-324
2015-02-16 14:58:35 +02:00
9dfa4378b4
Merge branch 'develop' of https://github.com/mariadb-corporation/MaxScale into develop
2015-02-16 09:21:38 +00:00
d7da8c5297
Code cleanup
2015-02-16 09:21:11 +00:00
617f44c9c9
use intptr_t type for pointer->integer conversion so that int <-> pointer sizes match
2015-02-14 16:39:05 +01:00
9177b6bcd3
Merge branch 'develop' into MAX-324
...
Conflicts:
query_classifier/query_classifier.h
2015-01-13 06:34:22 +02:00
333f79f4db
Commented session id logging.
2015-01-12 14:44:53 +02:00
fed828eb29
Merge branch 'release-1.0GA' into MAX-324
...
Conflicts:
server/MaxScale_template.cnf
server/core/service.c
2015-01-06 04:45:30 +02:00
8f570082eb
poll.c:poll_add_event_to_dcb didn't update pollStats.evq_pending when added event became pending. That may cause threads to run in poll loop with minimal timeout infinitely. Added counter update.
2014-12-15 22:21:23 +02:00
7fed679f40
poll.c:poll_add_event_to_dcb did not increase the pollStats.evq_pending counter which caused it to go negative, which, inturn caused all threads to spinloop with minimal timeout.
2014-12-15 22:09:23 +02:00
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
5fa87776b0
Fixes for Coverity bugs
2014-11-20 16:04:22 +00:00
a65b9fa8b3
Fixes to Coverity defects: 72662 82143 82144 82145 82348 82349
2014-11-20 06:44:43 +02:00
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
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
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
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