Commit Graph

188 Commits

Author SHA1 Message Date
a2bff1dcea Merge branch 'develop' into MAX-324 2015-02-16 14:58:35 +02:00
cd99d6c1dd Fixes to Coverity defects 87073, 87388. 2015-02-16 09:11:55 +02:00
46ec9abe29 Added optional parameters for services that allow all servers to be used when building the list of users. 2015-02-09 07:19:13 +02:00
ba0d4ae29e Addition of log message for zero users beign loaded. 2015-02-06 16:10:29 +00:00
d4f5ca6bcb Merge branch 'blr' into develop
Addition of hashtable load and save. Caching of auth information
2015-02-06 11:52:51 +00:00
bc0d303b27 Add saving of hashtables to a file
Cache the user information to file in order to allow authentication without backend databases
2015-02-06 11:44:29 +00:00
0083e62c41 Merge branch 'blr' into develop 2015-02-03 17:19:06 +00:00
21bb341c7d Fix to bug #507, http://bugs.mariadb.com/show_bug.cgi?id=507
readwritesplit.c:get_route_target routed query to slave although query type was combined QUERY_TYPE_READ | QUERY_TYPE_MASTER_READ, where the latter is supposed to be routed to master.
2015-01-27 15:21:31 +02:00
5d1f029260 New fix candidate to bug #698, http://bugs.mariadb.com/show_bug.cgi?id=698
client/test/maxadmin_test.sh: added new cases for testing maxadmin
service.c:dListListeners:fixed NULL-pointer reference
debugcli.h: replaced magic number 80 with constant integer.
cli.c:execute:fixed command buffer overflow
debugcmd.c:convert_arg:restored return value to 0 in case of error
2015-01-19 17:55:02 +02:00
613ed8bb61 Cleanup some log messages 2015-01-07 17:37:32 +00:00
cd99849581 Fix #2 to bug 680: http://bugs.mariadb.com/show_bug.cgi?id=680"
When no users are loaded from backends, instead of counting it as a failure the service is started and the next time a client connects an attempt to load the users from the backends is made.
2015-01-05 17:38:45 +02:00
6adccb3c17 Fix to bug 680: http://bugs.mariadb.com/show_bug.cgi?id=680
service.h:Added the 'serviceStartFailed' function which tries to start services with successfully started routers but no successfully started listeners.
mysql_mon.c:Added a call to ServiceStartFailed when servers come available.
2015-01-05 13:38:39 +02:00
95cd0b93cb Fix to bug 679: http://bugs.mariadb.com/show_bug.cgi?id=679
Added server references to services instead of using a raw pointers to server instances.
Changed all references to service->database to service->dbref.
2015-01-02 20:55:38 +02:00
f4f537a3e2 Fix to bug #673, http://bugs.skysql.com/show_bug.cgi?id=673
dcb.c:dcb_hashtable_stats:division by zero
hashtable.c:hashtable_get_stats: NULL-pointer reference
service.c:serviceStartPort:set service->users NULL to avoid referring to freed memory
users.c:dcb_usersPrintf: NULL-pointer reference
debugcmd.c:convert_arg: changed return value to 1 in case of error, 0 (==NULL) is valid but it indicates that there are no users loaded.
	execute_cmd: fixed command handling
2014-12-31 21:06:28 +02:00
beacd524da Fix to bug #662, http://bugs.mariadb.com/show_bug.cgi?id=662
dbusers.c: Added function for setting read, write and connection timeout values. Set default timeouts for getUsers. Defaults are listed in service.c
gateway.c:shutdown_server is called whenever MaxScale is to be shut down. Added call for service_shutdown to shutdown_server.
service.c:service_alloc: replaced malloc with calloc and removed unnecessary zero/NULL initialization statements as a consequence.
	serviceStart: Exit serviceStartPort loop if shutdown flag is set for the service.
	serviceStartAll: Exit serviceStart loop if shutdown flag is set for the service.
service.c: Added service_shutdown which sets shutdown flag for each service found in allServices list.
service.h: Added prototype for service_shutdown
2014-12-29 13:45:24 +02:00
ac97fcd764 Removed redundancy from error and message logs.
server.c: Added new member to SERVER->master_err_is_logged. It is used if server loses master status. It causes error log print in readwritesplit router's eror handling. Initial value is false and it is set always to false when server's status is set to master.
Added message log printing to mysql monitor, if master status changes to something else. It is not warning or error but only information which probably interests the user.

readwritesplit.c:Muted warnings and error printings in cases if slaves are not found if it is allowed to have a master only.
readwritesplit.c:Corrected error log printing in case where master lost its status. REdundant prints are removed.
2014-12-18 19:12:01 +02:00
a655e394ac Merge branch 'blr' into release-1.0GA
Conflicts:
	server/core/service.c
2014-12-16 15:44:19 +00:00
0967a09b5c Added severity keyword to error log messages 2014-12-09 14:26:33 +02:00
26e3486966 Fix for router instance creation failure 2014-12-09 09:54:04 +00:00
8b51d4fee2 Fix to bug 640: http://bugs.mariadb.com/show_bug.cgi?id=640
Added a check for the case when createInstance returns NULL.
Added messages to error log if router instance creation fails or if the service fails to start for any reason.
2014-12-09 06:31:53 +02:00
fdb9c5e6dc Switch to thread safe versions of localtime and asctime 2014-12-03 09:53:17 +00:00
83f7203213 Fix to unreported bug which printed result of getsockopt even in case when there was no socket error. 2014-11-27 15:37:13 +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
12b06a503e Removed NULL pointer printing
Removed NULL pointer printing
2014-11-13 17:15:17 +01:00
f466f86672 Added default NULL for users table
Added default NULL for users table
2014-11-10 11:10:32 +01:00
071e15048d Removed leak for service with more listeners
Removed leak for service with more listeners:

users are allocated once in service
2014-11-10 11:08:12 +01:00
897fc3f117 Updated user relaod rate refresh and added checks for failed strdup 2014-11-06 09:53:05 +00:00
665315ea5c Fix to bug #612, http://bugs.mariadb.com/show_bug.cgi?id=612
Also added error logging in cases where memory allocation failed etc.
2014-11-05 22:04:36 +02:00
1d38095229 Added history
Added history
2014-10-23 17:45:39 +02:00
78227bbe30 Added routine documentation
Added routine documentation
2014-10-23 17:40:14 +02:00
3cdb1dc2ae Added db names as hashtable
Added db names as hashtable
2014-10-20 19:26:13 +02:00
2dfa01fccc MySQL Auth with dbname check
MySQL Auth with dbname check

Unknown database ‘xxxxx’ is returned to client

Proper error number is still missing and also com_change_user need to
be fixed
2014-10-16 19:17:15 +02:00
a437d089bb database names are loaded
database names are loaded
2014-10-16 17:49:57 +02:00
d645088645 Added resources pointer to service
Added resources pointer to service
2014-10-13 18:18:30 +02:00
32d66e6f84 Minor modifications for testing. 2014-10-03 17:24:46 +01:00
b0683d9b4d Updated the licensing year from 2013 to 2013-2014 2014-10-01 14:37:12 +03:00
f4e591e382 Changed 'SkySQL Gateway' to 'MariaDB Corporation MaxScale' 2014-09-30 13:15:03 +03:00
c344231f80 Renamed all occurences of SkySQL to MariaDB Corporation 2014-09-30 13:02:10 +03:00
7108add6f5 code cleanup localhost_match_wildcard_host
code cleanup for localhost_match_wildcard_host
2014-09-12 17:21:34 +02:00
8818f23176 Added localhost_match_wildcard_host parameter
Added localhost_match_wildcard_host parameter to service
2014-09-12 16:24:55 +02:00
3bb614d9eb brand release-1.0beta-refresh merged
brand release-1.0beta-refresh merged
2014-09-12 16:00:36 +02:00
f15815c6bb New service parameter localhost_match_any
New service parameter ‘localhost_match_any’ allows localhost matching
the wildcard host.

Default value is 0, don’t match.
It may be changed if backend servers don’t have the anonymous user
‘’@localhost
2014-09-10 17:12:25 +02:00
025f920ddb Replaced RWSplit parameters write_ses_variables_to_all and read_ses_variables_from_slaves with
use_sql_variables_in=[master|all] (default all)
Modified MaxScale Configuration And Usage Scenarios-Z3.pdf and MaxScale_template.cnf accordingly.
Fixed typo in server/modules/routing/readwritesplit/test/rwsplit.sh
2014-09-10 11:32:53 +03:00
6a61e40978 Removed include which was added autonomously by KDevelop. 2014-09-09 10:57:17 +03:00
f74493d922 server/modules/filter/Makefile: Fixed problem which prevented cleaning and compiling hintfilter library.
server/core/config.c: Removed unused if..else block from config_get_valint. Changed it also to return value which indicates whether the operation succeed. Added config_get_valbool similar to config_get_valint.
service.c:Added typelib-like struct and array of valid boolean values. Fixed parameter type test in service_set_param_value. Completed boolean type parameter handling.
hintparser.c:Fixed error message for non-maxscale hints.
readwritesplit.c:Added loading of configuration parameters from service to instance and from instance to each new session. Fixed routing condition in get_route_target. Modified get_route_target so that it takes also rw_read_sesvars_from_slaves and rw_write_sesvars_to_all as parameters.
skygw_types.h: added array size counting macro.
2014-09-08 21:44:23 +03:00
92889ad216 config.c: Added configuration parameter processing for read_ses_variables_from_slaves and for write_ses_variables_to_all . The values are read from config file, qualified and stored to service. Values are loaded when instance is created. This is limitation in current implementation and will change so that configuration is dynamically changeable. 2014-09-07 23:48:16 +03:00
7ea53f0141 Merge remote-tracking branch 'origin/MAX-160' into MAX-237
Conflicts:
	query_classifier/query_classifier.cc
	query_classifier/query_classifier.h
2014-08-29 11:02:03 +03:00
3476558f52 Fixed soem errors from a cppcheck run
mbrampton@martin-office:~/Dropbox/development/skygit/MaxScale/server$ cppcheck -q core/*.c
[core/adminusers.c:302]: (error) Resource leak: fp_tmp
[core/filter.c:382]: (error) Uninitialized variable: me
[core/service.c:1071]: (error) Uninitialized variable: succp
2014-08-22 14:25:27 +01:00
e329d8cf13 Fix to bug #479, http://bugs.skysql.com/show_bug.cgi?id=479
service.c was counting unfound filters towards the filter chain size.
2014-08-20 15:15:45 +03:00
8ffca16368 Added consistency check for detect_replication_lag and max_slave_replication_lag and router_options=slave_select_criteria=LEAST_BEHIND_MASTER
Fixed a bug in service_add_qualified_param which didn't handle param list correctly.
2014-07-01 16:54:16 +03:00