76 Commits

Author SHA1 Message Date
counterpoint
395cbdc103 Simplify handling of "client data" by having a pointer to it only in DCB and not in session structure. Change name of session->client to session->client_dcb for greater clarity. Temporary free of client data in DCB, to be moved to authenticator when it becomes a module. Fix incorrect name of listener_alloc. 2016-02-23 11:13:21 +00:00
Johan Wikman
040c67127a Reindent schemarouter.c
- Untabify
- 4 space indent
- Allman + other style issues.
2016-01-12 13:54:23 +02:00
Johan Wikman
23a7562d3a Replace skygw_ type prefix with qc_.
- skygw_query_type_t renamed to qc_query_type_t.
- skygw_query_op_t renamed to qc_query_op_t.
2016-01-11 12:06:21 +02:00
Johan Wikman
2f42246880 Rename query classifier functions consistently.
All public query classifier functions now have the prefix qc_.
2016-01-11 12:04:52 +02:00
Johan Wikman
ec281849aa Remove explicit calls to parse_query.
Now that all query classifier functions parse the query if it
has not been parsed, there is no reason for any module to call
parse_query explicitly.
2016-01-11 10:15:13 +02:00
Markus Makela
05a7f5759b Fixed thread safety issues in schemarouter and shardrouter
Fixed strtok being used in a multithreaded context and removed unused code.
2016-01-04 18:40:00 +02:00
Markus Makela
78b5777d6e Fixes to Coverity defects
Few fixes to possible use of freed memory and resource leaks.
2015-12-15 13:13:53 +02:00
Markus Makela
d6afe70c6f Fix to MXS-323: Routers properly handle client DCB errors
All routers now detect if a client DCB is passed to handleError and
take the appropriate action.
2015-12-02 18:01:14 +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
0413c957f8 LOGIFs removed from schemarouters. 2015-11-17 14:18:51 +02:00
Markus Makela
b828b04c05 Fixed debug assertion. 2015-11-17 09:17:29 +02:00
Johan Wikman
a355e1beef Printf format checking added to logging function.
Printf format checking added to logging function and all
issues that were revealed by that fixed.
2015-11-16 12:40:49 +02:00
Markus Makela
1f15843d61 Refactored schemarouter to use the resultset.h data types and functions
The generated responses to SHOW DATABASES are now generated by using the resultset.h
data types and functions.
2015-11-16 08:39:49 +02:00
Markus Makela
30d1fc66b7 getCapabilities no longer takes arguments and returns an int. 2015-11-11 18:14:03 +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
Markus Makela
99ac4876f4 Fixed wrong variables being passed. 2015-11-03 12:16:22 +02:00
Markus Makela
3903c4a35d Renamed and moved variables around
Renamed variables to make more sense and reordered them to be more in line with
the function's purpose.
2015-11-03 12:16:22 +02:00
Markus Makela
50b0a9b71b Code changes based on review of 1e8afe5063134b7c56492b3777ae1248b1587ba4 2015-11-03 12:16:22 +02:00
Markus Makela
d5c38b93f6 Fix to MXS-431: https://mariadb.atlassian.net/browse/MXS-431
Replaced the use of the shared MySQLSession structure with an internal variable
that tracks the currently active database.
2015-11-03 12:16:22 +02:00
Markus Makela
18c53bebf1 Fix to MXS-430: https://mariadb.atlassian.net/browse/MXS-430
Added caching of the hashtables used to map databases to servers.
2015-11-03 12:16:22 +02:00
Markus Makela
c37e18e3d2 Moved included headers back to .c file 2015-10-28 15:07:50 +02:00
Markus Makela
8d84deecc5 Updated schemarouter to use PCRE2 and moved includes to the header file. 2015-10-28 15:07:50 +02:00
Markus Makela
7e1034a740 All conflicts are printed when processing databases. 2015-10-05 10:20:58 +03:00
Markus Makela
6227d9f834 Cleaned up schemarouter code. 2015-10-05 10:20:58 +03:00
Markus Makela
a576606f2b Updated schemarouter duplicate DB code based on code review. 2015-10-05 10:20:58 +03:00
Markus Makela
af2bc91383 Cleaned up the clientReply function of the schemarouter. 2015-10-05 10:20:58 +03:00
Markus Makela
bff6db96a1 Same database on more than one server now cause the schemarouter session to be closed. 2015-10-05 10:20:58 +03:00
counterpoint
e38ea9d07d Correct missing return value. 2015-10-02 16:19:59 +01:00
counterpoint
2231d0870c Place checks in callback routines because DCB will not always contain a reference to a router session, and the associated data will be invalid in this case. 2015-09-25 12:17:18 +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
counterpoint
986c918d52 Remove ERRACT_RESET action from router error handler; remove sole call from mysql_client. Correct comments on parameters for router error handlers. 2015-09-09 08:31:59 +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
Markus Makela
9a6e3a9a86 Fix to Coverity defect. 2015-08-20 09:34:52 +03:00
Markus Makela
185ff4343c Added a missing NULL check. 2015-08-14 09:54:51 +03:00
Markus Makela
c3e1e2b345 Merge branch 'develop' into schemarouter_refresh
Conflicts:
	Documentation/Tutorials/Replication-Proxy-Binlog-Router-Tutorial.md
2015-08-08 11:25:54 +03:00
Markus Makela
78eab19c62 Fixed compiler warnings. 2015-07-14 17:13:09 +03:00
Markus Makela
a9e0a52b9e Fixed false positives in SHOW SHARDS detection. 2015-07-03 13:59:25 +03:00
Markus Makela
5964a68143 Added SHOW SHARDS functionality into schemarouter. 2015-07-03 13:44:22 +03:00
Markus Makela
993ec723b9 Added verbose client errors to schemarouter. 2015-07-02 13:28:23 +03:00
Markus Makela
b1c383b19e Added database list refreshing to schemarouter. 2015-06-09 16:13:06 +03:00
counterpoint
d0e92a15f8 Move decrement of server connections into zombie processing; introduce dcb_close_finish to be called either in dcb_close or when persistent dcb is discarded. 2015-06-09 11:41:43 +01:00
Markus Makela
8301410c79 Fixed possible memory leaks in schemarouter. 2015-05-11 22:02:35 +03:00
counterpoint
8647b30184 Merge remote-tracking branch 'origin/develop' into MXS-105
Conflicts (resolved):
	server/modules/routing/schemarouter/schemarouter.c
2015-05-05 10:54:09 +01:00
Markus Makela
463cd4a97e Moved common sharding functions to a separate file. 2015-05-04 07:06:24 +03:00
Markus Makela
550b130d91 Schemarouter shortest session statistic now only updates session with a length of more than zero seconds. 2015-05-01 11:13:43 +03:00
Markus Makela
2498278582 Fixed queued queries not being freed if session was closed before they could be routed. 2015-04-30 22:22:26 +03:00
counterpoint
8b7158afda Merge remote-tracking branch 'origin/develop' into MXS-105 2015-04-24 15:40:07 +01:00
counterpoint
03badb9b7b Modifications to galera monitor to control whether selection of master is wanted. 2015-04-24 15:35:10 +01:00