Commit Graph

192 Commits

Author SHA1 Message Date
c8e5df94be Fixed memory leak in query_classifier. 2015-05-03 09:58:17 +03:00
440a6ece59 Fix to MXS-78: https://mariadb.atlassian.net/browse/MXS-78
Literal USE statements are now parsed and classified as a database change queries.
2015-04-02 08:16:45 +03:00
e527508405 Added missing header guards to query classifier.h 2015-03-26 11:54:19 +02:00
15262f3fbf Added new Make target for testing MaxScale's core parts.
This target doesn't need a running MaxScale and only executes core, log_manager and query_classifier unit tests.
2015-03-19 11:56:40 +02:00
9e7afeb302 Merge branch 'develop' into MAX-324
Conflicts:
	macros.cmake
	server/core/config.c
	server/core/service.c
	server/modules/routing/CMakeLists.txt
2015-02-24 06:26:55 +02:00
46c4fefb00 Fixes to coverity defects 87601 87557 87548 87547 87546 87545 87544 87536 87535 87529 87528 2015-02-22 22:29:30 +02:00
a2bff1dcea Merge branch 'develop' into MAX-324 2015-02-16 14:58:35 +02:00
37360eb02e Merge pull request #72 from hholzgra/hartmut-warnings-2nd
"Hartmut warnings 2nd" merged.
2015-02-15 20:26:09 +02:00
3bad5dc814 Fixes to Coverity defects 87308, 87307, 87306, 87074, 87068. 2015-02-14 07:54:17 +02:00
792d4e9c8c fix 'unused value' warning 2015-02-13 16:28:57 +01:00
0d4761ade8 Merge branch 'develop' into MAX-324 2015-02-06 23:27:59 +02:00
32c9d39302 Fix to bug 771: http://bugs.mariadb.com/show_bug.cgi?id=711
SHOW GLOBAL STATUS was misclassified as a global system variable write and was being routed to all servers instead of being routed only to the master.
2015-02-05 18:31:01 +02:00
1348947faa Merge branch 'develop' into MAX-324 2015-01-30 20:58:57 +02:00
a9a9a6eae5 Small fixes to log_manager and query_classifier tests. 2015-01-30 08:26:10 +02:00
db1ea422a0 Merge branch 'develop' into MAX-324
Conflicts:
	server/core/modutil.c
2015-01-20 04:25:40 +02:00
885dfb0242 Merge branch 'remove_makefiles' into develop 2015-01-16 18:04:16 +02:00
c5c9165a26 Merge branch 'develop' of https://github.com/mariadb-corporation/MaxScale into develop 2015-01-15 15:21:58 +02:00
39e4253c81 Fix to bug #694, http://bugs.mariadb.com/show_bug.cgi?id=694
query_classifier.cc: set_query_type lost previous query type if the new was more restrictive. Problem was that if query is both READ and SESSION_WRITE and configuration parameter use_sql_variables_in=all was set, routing target became ambiguous. Replaced call to set_query_type with simply adding new type to type (=bit field) and checking unsupported combinations in readwritesplit.c:get_route_target. If such a case is met, a detailed error is written to error log in readwritesplit.c. mysql_client.c sees the error code and sends an error to client. Then mysql_client.c calls router's handleError which ensures that there are enough backend servers so that the session can continue.
2015-01-15 15:16:22 +02:00
533042b61a Fixes to coverity defects from 85514 up to 85529. 2015-01-15 14:09:11 +02:00
db70163373 Merge branch 'develop' into MAX-324
Conflicts:
	query_classifier/query_classifier.cc
2015-01-15 13:17:42 +02:00
06c2d201e0 remove makefiles and other garbage 2015-01-14 19:08:24 +02:00
b3824a1eaf Clean up bits and pieces, removed some unnecessary checks. 2015-01-14 14:11:19 +02:00
c1ed24aa78 Initial implementation of session based sharding. 2015-01-14 10:47:04 +02:00
0187edf559 Merge branch 'develop' into MAX-324
Conflicts:
	query_classifier/query_classifier.cc
2015-01-14 04:56:58 +02:00
2b4e6bb594 Merge branch 'develop' into firewall
Conflicts:
	server/modules/filter/test/CMakeLists.txt
2015-01-13 07:48:43 +02:00
9177b6bcd3 Merge branch 'develop' into MAX-324
Conflicts:
	query_classifier/query_classifier.h
2015-01-13 06:34:22 +02:00
ee2876e9a4 Added parameter NULL checks to query_classifier.cc 2015-01-10 21:29:29 +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
8729413655 Fixed build issues due to missing headers. 2015-01-05 11:37:37 +02:00
ba009e5fd3 Fixes to Coverity defects 85010 84878 72752 72742 72719 and 73418.
skygw_utils.cc: Added function is_valid_posix_path that checks if a path is POSIX-compliant.
2015-01-05 06:05:56 +02:00
1e43102eea Merge branch 'release-1.0GA' into firewall 2014-12-16 11:10:02 +02:00
04a92e40df Fixes to Coverity defects 84879 84878 72752 72742 2014-12-15 06:28:47 +02:00
d1f5eaaaec Fixed databases not being detected in query_classifier when creating new tables. 2014-12-12 16:57:19 +02:00
f2cec6e51e Merge branch 'release-1.0GA' into firewall
Conflicts:
	query_classifier/query_classifier.cc
2014-12-09 14:23:07 +02:00
bc104c0ef1 Merge branch 'release-1.0GA' into MAX-324 2014-12-08 22:37:15 +02:00
68fc849c6e query_classifier.cc:cleaned up some intendentions and brackets.
dbshard.h:removed unnecessary code
dbshard.c:removed unnecessary code, cleaned up a bit and made some required changes
readwritesplit.c:removed two unnecessary variable assignments.
2014-12-07 00:34:23 +02:00
06578c95a5 Updates to dbshard router:
Added a parsing function to query classifier that returns an array of database names the query uses.
Added a check if the query targets a sharded database. If so, a hint is added that routes the query to the named server.
2014-12-06 11:30:07 +02:00
01b1b0a304 Fixes to Coverity issues 84388, 84386, 84385
mysql_mon.c: Added back server state logging to Debug build.
query_classifier.cc: removed some extra debug code, cleaned up a bit function documentation.
mysql_client_server_protocol.h, mysql_backend.c, mysql_common.c: changed some variables to signed ones to enable checking of calculations in the code.
skygw_utils.cc: removed erroneous debug assertion.
2014-12-05 23:39:14 +02:00
12d6d81fa8 Merge branch 'release-1.0GA' into firewall
Conflicts:
	log_manager/log_manager.cc
2014-12-04 17:13:41 +02:00
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
0900b5dbce Merge branch 'develop' into firewall
Conflicts:
	server/modules/filter/test/harness_common.c
2014-11-25 17:56:26 +02: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
a5ece62327 Merge branch 'develop' into firewall
Conflicts:
	server/modules/filter/test/harness.h
	server/modules/filter/test/harness_common.c
2014-11-17 18:45:01 +02:00
6bda88f252 Addition to fix to bug #597, http://bugs.skysql.com/show_bug.cgi?id=597 2014-11-17 15:15:34 +02:00
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
ca13e18f53 Added query operation type requirements on where clauses and fixed a bug with regex rules. 2014-11-14 16:28:20 +02:00
afb8859b43 Merge branch 'develop' into firewall 2014-11-13 09:50:02 +02:00
fb9d792859 Fix to Coverity defect 76134 2014-11-13 09:02:56 +02:00
4a8f97d2e2 Merge branch 'develop' into firewall 2014-11-11 14:18:44 +02:00
9cb2be9605 Fixes to Coverity erros 75748 and 76132. 2014-11-11 13:42:12 +02:00