Commit Graph

437 Commits

Author SHA1 Message Date
2d600868f5 Added argument substitution to monitor scripts 2015-11-11 21:19:07 +02:00
466224b316 Moved common monitor code to externcmd.c
File existence and permission checks are now done in externcmd_can_execute
2015-11-11 21:19:07 +02:00
d56843835c Cleaned up externcmd_allocate and externcmd_free 2015-11-11 21:19:07 +02:00
9ab5326960 Fix to MXS-438: https://mariadb.atlassian.net/browse/MXS-438
Maxinfo now supports the shutdown command which shuts down a service, monitor
or MaxScale itself and the restart command which restarts a stopped monitor
or service.
2015-11-11 18:59:39 +02:00
3ea55e3b50 Fix to MXS-437: https://mariadb.atlassian.net/browse/MXS-437
Maxinfo now allows users to flush logs and change the server status
through the MySQL interface.
2015-11-11 18:57:19 +02:00
8363673be6 Added number of inserted elements to hashtable
Added tracking of the number of inserted elements to the hashtable.
Also added utility function to get the size of the hashtable.
2015-11-11 17:57:35 +02:00
cd6f7ce046 Fix to MXS-447: https://mariadb.atlassian.net/browse/MXS-447
Monitors are now started after they have been fully configured.
2015-11-11 17:54:41 +02:00
acb0a523a7 Log: No more argv parsing for log manager.
Earlier, the global setting for the syslog decided whether syslog
was enabled when skygw_logmanager_init was called, but not whether
logging to syslog actually was made.

Now syslog logging is enabled by default and the global setting
decides whether or not syslog logging actually is made. That is,
this opens up the possiblity for making it possible to turn on
and off sysloging at runtime.

Further, although the API led you to believe otherwise, it was
hardwired that LOGFILE_ERROR and LOGFILE_MESSAGE messages were
written to syslog.

The changed removed the need for passing an argv array explicitly.
2015-11-11 13:53:14 +02:00
24bed47794 Syslog ident must be provided explicitly.
The syslog ident must be provided explicitly when calling
skygw_logmanager_init (and not provided via the argv array).
It can be NULL, in which case it automatically will be the program
name.

The openlog() call is now always made, irrespective of what the
value of the global syslog flag is. That way it will be possible
to turn syslog logging on or off after the fact.
2015-11-11 13:48:57 +02:00
55dbaa49c0 Logging target must be explicitly defined.
Whether the log-file should be written to the filesystem or to
shared memory must now be explicitly defined when calling
skygw_logmanager_init() (instead of passing that via the argc/argv
construct).

Also, the meaning of '-l' when invoking maxscale has been changed.

Earlier -l [file|shm] specified whether the trace and debug logs
should be written to shared memory (while the error and message
logs always were written to the filesystem) and the _default_
was to write them to shared memory.

Now, with only one file, '-l' has still the same meaning, but it
decides whether the one and only logfile should be written to shared
memory, or the filesystem and the _default_ is to write it to the
filesystem.
2015-11-11 13:47:34 +02:00
90a8646ac2 Whitespace and indentation changes.
Also changed line-endings from DOS CRLF to only LF.
In addition, made functions const correct.
2015-11-11 13:43:15 +02:00
450078fa92 Interface of skygw_logmanager_init(int argc, char* argv[]) changed.
The previous interface of skygw_logmanager_init was conceptually
broken. With -o you could specify that logging should be done to
stdout. However, even if you did that, the log manager still checked
that the logging directory could be accessed. Unless it had been
specified using -j <path> the default was /var/log/maxscale.

That is, unless the program calling skygw_logmanager_init was invoked
by a user that had write access to /var/log/maxscale, there would be
a complaint even if nothing was ever written to that directory.
In practice this meant that even if -o was used you had to provide
a -j with a path that surely is writeable (e.g. "/tmp").

This has now been changed so that you explicitly must provide the
log directory and the flags -j and -o are removed.

  bool skygw_logmanager_init(const char* logdir, int argc, char* argv[]);

If /logdir/ is provided then logged messages are written to a log file
in that directory. If /logdir/ is NULL then messages are logged to stdout
and no checks for access to any directory is not made.
2015-11-06 14:20:05 +02:00
d57b4cd531 Fix to MXS-54: https://mariadb.atlassian.net/browse/MXS-54
Added a new configuration parameter that allows the user to control
whether authentication warning messages are logged.
2015-11-04 09:18:20 +02:00
9cd327a783 Fix to MXS-417: https://mariadb.atlassian.net/browse/MXS-417 Added support for single-character wildcard in IP addresses.
Single character wildcard addresses are now properly handled
2015-11-03 10:15:34 +02:00
7c582f91ea Merge branch 'develop' into 1.2.1-binlog_router_trx 2015-11-02 18:09:59 +02:00
529e697eaf Updated code based on review of ac308dcb2c34e081f9814ad40c0961a217c86fc4
Removed unnecessary spinlock and added more checks.
2015-11-02 12:00:08 +02:00
6810ed15dd Fix to MXS-436: https://mariadb.atlassian.net/browse/MXS-436
Added autodetection of processor cores and used it as the default if an
invalid value is used for threads.
2015-11-02 12:00:08 +02:00
cd55f62051 Fix to MXS-29: https://mariadb.atlassian.net/browse/MXS-29
If MAXSCALE_SCHEMA.REPLICATION_HEARTBEAT isn't replicated, a warning is logged.
2015-10-31 10:34:37 +02:00
c1eb84b377 Added utility functions for regular expression matching with the PCRE2 library. 2015-10-31 10:34:37 +02:00
75e8033052 Merge branch 'develop' into 1.2.1-binlog_router_trx 2015-10-19 09:36:04 +02:00
897907b202 Fix to MXS-352: https://mariadb.atlassian.net/browse/MXS-352
If a service fails, MaxScale will try to start it again later on.
2015-10-07 15:35:12 +03:00
bff6db96a1 Same database on more than one server now cause the schemarouter session to be closed. 2015-10-05 10:20:58 +03:00
a2d91678c7 Merge branch 'develop' into 1.2.1-binlog_router_trx 2015-09-15 15:17:20 +02:00
8a996029bc Merge branch 'MXS-35' into develop 2015-09-15 11:50:36 +03:00
6fe8082445 Merge branch 'develop' into 1.2.1-binlog_router_trx 2015-09-09 10:20:25 +02:00
5350a85e2b Fix to MXS-356: https://mariadb.atlassian.net/browse/MXS-356
Added configurable timeouts for the embedded MySQL connections.
2015-09-08 11:23:35 +03:00
697e108072 Merge branch 'develop' into 1.2.1-binlog_router_trx 2015-09-03 18:58:06 +02:00
30cdda48c6 The datadir path is now used as the location where the process specific data directories are created. 2015-09-03 19:30:16 +03:00
506bc422fb Merge branch 'develop' into 1.2.1-binlog_router_trx 2015-09-03 10:08:55 +02:00
28a6ea90c0 Added more details to log output when MaxScale receives a fatal signal. 2015-09-01 10:11:20 +03:00
a591b47b9f Merge branch 'develop' into 1.2.1-binlog_router_trx 2015-08-28 16:09:32 +02:00
3a901bfea7 Added automatic configuration of localhost_match_wildcard_host. 2015-08-28 14:55:40 +03:00
c5214bea1b Cleaned up code and changed function structure. 2015-08-28 12:54:38 +03:00
525daf827a Service are not started if user permissions are inadequate.
Also cleaned up code and error messages.
2015-08-28 12:54:38 +03:00
4da9045da4 Removed redundant function. 2015-08-28 12:54:38 +03:00
94eb1b4eb1 Added service and monitor permission checks. 2015-08-28 12:51:37 +03:00
0c552bab29 Fix to MXS-35: https://mariadb.atlassian.net/browse/MXS-35
The parent process now correctly returns the value from the child process.
2015-08-27 14:22:58 +03:00
85d11436d7 Merge branch 'develop' into 1.2.1-binlog_router_trx 2015-08-25 16:10:43 +02:00
b1d6096fa8 Added a check for running MaxScale processes. 2015-08-25 15:20:10 +03:00
34bd94fbcd Merge branch 'develop' into 1.2.1-binlog_router_trx 2015-08-20 10:09:32 +02: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
1989b7eaa7 Merge branch 'develop' into 1.2.1-binlog_router_trx 2015-08-10 17:57:32 +02:00
37ea3a6224 Fixed error on bad log directory. 2015-08-10 18:25:46 +03:00
0abcf349ff Partial merge of MXS-70 2015-08-10 17:33:40 +03:00
9f9b63485a Merge branch 'develop' into 1.2.1-binlog_router_trx 2015-08-07 21:20:32 +02:00
710cfbd6c5 Fixed custom directory locations not working. 2015-08-07 19:22:26 +03:00
61c47375d5 Merge branch 'develop' into 1.2.1-binlog_router
Conflicts:
	server/core/server.c
	server/include/server.h
	server/modules/include/blr.h
	server/modules/routing/binlog/blr.c
	server/modules/routing/binlog/blr_file.c
	server/modules/routing/binlog/blr_master.c
	server/modules/routing/binlog/blr_slave.c
2015-08-04 07:59:44 -04:00
100f8ebd66 Removed unnecessary memory allocation. 2015-08-03 20:02:13 +03:00
c33f1199d9 Fix lack of declaration for session_unlink_dcb; restructure dcb closedown logic to fix counting problem and reduce code. 2015-07-21 09:54:01 +01:00
4f5de063eb Merged dcb_read and dcb_read_n into a single function (dcb_read with an extra parameter). 2015-07-10 15:12:22 +01:00