143 Commits

Author SHA1 Message Date
Johan Wikman
6c401b9085 Reindent server/core/poll.c 2015-11-30 18:57:19 +02:00
Johan Wikman
916ee5ff2a Rename some log concepts
The mxs prefix is now uniformly used with all log components.
2015-11-26 17:34:53 +02:00
Markus Makela
038877b8db Fixed minor format errors and resource leaks
Some format strings used integer values for unsigned integers.
Memory and file descriptors leaked in some error conditions.
2015-11-25 12:43:49 +02:00
Johan Wikman
a8535f42af Remove all traces of logfile_t
The earlier log file based approach for enabling and disabling
messages has now been completely replaced with the syslog priority
based approach.

Similarly as with log files before it is now possible to enable
and disable a log priority for a particular session, even though
it apparently has not been used much.

The local test-programs of the logging has got minimal attention
only to make them compile. They should get an overhaul as they did
not work before either.
2015-11-23 19:10:53 +02:00
Johan Wikman
910ddb99fd Reset sessionid upon exit.
Since the sessionid is now unconditionally set, it also needs to
be unconditionally reset.
2015-11-23 18:44:38 +02:00
Johan Wikman
62b0e5fab0 Session info always copied to tls
Maxadmin earlier gave the impression that you could change whether
messages for different log files could be specifically enabled for
a session. In practice that was true only for trace messages as the
session id and the bitmask telling what logfiles are enabled, were
copied to thread local storage only as far as trace messages were
concered.

The code for setting that information in place is quit short and
efficient, so there is really no reason not to do that always.
This also means that it always will be possible to get your hands
on the session object if there is a need for that.
2015-11-23 18:14:46 +02:00
Johan Wikman
44df53d846 LOGIF and skygw_write_log removed from server/core/*.c
LOGIF and skygw_write_log removed from server/core/*.c and
replaced with calls to MXS_(ERROR|WARNING|NOTICE|INFO|DEBUG).
This is a mechanism change, no updating of the actual message
has been performed.

Currently this causes a very small performance hit, since the
check whether the priority is enabled or not is performed in
the function that is called and not before the function is called.
Once all LOGIFs and skygw_write_logs have been replaced, the
behaviour will be altered back to what it was.
2015-11-16 09:49:12 +02:00
Johan Wikman
2dcdab29b6 LOGIF_MAYBE macros cleaned away.
Used in few places and only obscured what was going on.
2015-11-14 22:28:17 +02:00
Johan Wikman
86dcd1cc0f LOGIF_MAYBE macros cleaned away.
Used in few places and only obscured what was going on.
2015-11-14 21:51:27 +02:00
counterpoint
dee20fe077 Merge remote-tracking branch 'origin/develop' into MXS-329-develop-20151111
# Conflicts:
#	server/core/CMakeLists.txt
#	server/core/buffer.c
#	server/core/service.c
#	server/modules/filter/tee.c
#	server/modules/monitor/mysql_mon.c
#	server/modules/routing/binlog/blr.c
#	server/modules/routing/binlog/blr_slave.c
#	server/modules/routing/debugcmd.c
#	server/modules/routing/readwritesplit/readwritesplit.c
#	utils/skygw_utils.cc

- resolved.
2015-11-11 11:08:02 +00:00
Johan Wikman
834a88aeda Log variables moved to log_manager.h
The log manager variables lm_enabled_log_files_bitmask, log_ses_count
and tls_log_info that earlier were declared separately in every
c-file are now declared in the log_manager.h header.
2015-11-04 14:26:53 +02:00
counterpoint
57f5dd15bc Resolve problem of lingering backend database processes; alter MySQL monitor to insert fake events when backend server unavailable; fix problem with count of current connections. 2015-10-16 17:55:07 +01:00
counterpoint
88716c35fb Various changes to block loopholes in different cases and tidy up. 2015-09-21 09:23:22 +01:00
counterpoint
cfeaf7d6e9 Merge remote-tracking branch 'origin/develop' into MXS-329
Conflicts:
	server/core/session.c
2015-09-10 13:07:27 +01:00
counterpoint
f6916a23bd Move responsibility for closing DCB on error to router error handling. Check that routers remove or disable links to closed DCB. 2015-09-09 09:33:00 +01:00
Johan Wikman
160bbb70ee MXS-251: strerror
Replaces all calls to strerror with calls to strerror_r. The former
is non-thread safe while the latter is.
2015-09-05 15:52:13 +03:00
counterpoint
5338318900 Improve error message when DCB has no session pointer in poll loop. 2015-08-28 17:25:41 +01:00
Markus Makela
70d82fd45e Fixed compilation problems. 2015-08-26 18:33:46 +03:00
counterpoint
72b301785b Complete implementation of error logging when no session pointer in DCB. 2015-08-25 12:25:36 +01:00
counterpoint
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
counterpoint
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
counterpoint
12922225b8 Remove redundant DCB state DCB_STATE_FREED, remove obsolete assertion from poll.c, tidy up. 2015-08-25 09:11:44 +01:00
counterpoint
37ac158791 Changes to try to eliminate setting dcb->session to NULL with risk of crashing system. 2015-08-24 12:12:43 +01:00
Martin Brampton
5e2e2585ad Fix mistakes. 2015-08-23 16:43:07 +01:00
Martin Brampton
1baf693b02 First changes for lazy session creation. 2015-08-23 16:39:08 +01:00
Martin Brampton
087c2fca46 Block out new test for the time being. 2015-08-23 10:09:42 +01:00
Martin Brampton
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
Martin Brampton
53c3cc4b41 Fix mistake; tidy format. 2015-08-22 19:14:40 +01:00
Martin Brampton
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
counterpoint
38f78c7239 Fix possible threading problem. 2015-08-19 17:23:49 +01:00
Markus Makela
98ab399e6e Changed sprintf calls to snprintf calls and fixed compiler warnings. 2015-08-18 10:50:48 +03:00
counterpoint
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
Markus Makela
78eab19c62 Fixed compiler warnings. 2015-07-14 17:13:09 +03:00
Markus Makela
3992f262ca Fixed Coverity defects 2015-07-14 16:17:50 +03:00
counterpoint
3ddbe47f8b Minor tidy up, including removing obsolete MUTEX_BLOCK. 2015-07-13 14:32:54 +01:00
Markus Makela
ef6728344e Fixed failures to close cloned DCBs. 2015-07-13 13:11:43 +03:00
counterpoint
77db46359e Change poll control failures to use SIGABRT rather than assert(false). 2015-07-08 08:52:19 +01:00
counterpoint
4c8aa02c31 Finalise comments; change abort from assert(false) to raise(SIGABRT). 2015-07-07 16:57:13 +01:00
counterpoint
be789855ee Add lines to revision history. 2015-07-07 16:57:12 +01:00
counterpoint
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
counterpoint
77d374cd52 Fix mistake. 2015-07-07 16:57:12 +01:00
counterpoint
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
counterpoint
a72f462e2d Fixes for MXS-196 and other related problems. 2015-07-07 16:57:12 +01:00
Markus Makela
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
Markus Makela
04b969efaa Fixed poll.c include with old header name. 2015-03-12 07:39:39 +02:00
Markus Makela
63d83cd85d Monitor API 2.0.0 implemented. 2015-03-11 15:18:55 +02:00
Markus Makela
880adca73e Merge branch 'develop' into MAX-324 2015-03-05 10:45:48 +02:00
Markus Makela
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
Mark Riddoch
a022775342 Addition of show eventtimes and /events/times URL to maxinfo 2015-02-20 11:53:47 +00:00
Mark Riddoch
8eb14235d1 Addition of DCB and Poll statistics in show status output 2015-02-20 10:05:50 +00:00