be1bdfaa92
Mark masking as part of the core
2017-01-20 13:30:00 +02:00
57b530a2e8
MXS-1065: add wildcards support to source option in namedfilter
...
It’s possible to add % wildcards in the ‘source’ option of
namedserverfilter.
Allowed values, for an IP address only are:
X.%.%.%
X.Y.%.%
X.Y.Z.%
The match any ‘%’ is not allowed
2017-01-20 12:15:20 +01:00
6dc6d6280a
Rename some .c-files, removing gw-prefix
...
May require reconfiguring the build. Some "gw":s are still
remaining, at least in test files.
2017-01-20 12:55:52 +02:00
6e38276a20
Rename files, removing "gw"-prefix
...
Also gwdirs.h.in -> paths.h.in
2017-01-20 12:55:52 +02:00
568239d2b5
Ignore auxiliary server status bits for state changes
...
The auxiliary status bits for the server were treated as if they changed
the real state of the server. The stale status bits don't affect the real
state of the server so they should be ignored when monitors check for
state changes in servers.
2017-01-20 09:10:44 +02:00
ffc68a688f
Fix mqfilter build failure
...
It called an internal session function for no real reason.
2017-01-20 09:09:56 +02:00
dbeb208a5c
Remove unnecessary function from header
...
The function was only used in one place.
Also added a debug assertion for the monitor event detection mechanism.
2017-01-19 16:03:05 +02:00
eff34b91fb
Move modules.h to core/maxscale
...
Also remove some unnecessary includes + cleanup
2017-01-19 15:53:25 +02:00
53c5b475ad
More cleanup of monitor.h
...
Move some more functions into core header + miscellaneous cleanup
2017-01-19 15:32:40 +02:00
02a8f7492e
Divide session.h to internal and interface headers
...
Definitions and function used by core are in
server/core/maxscale/session.h
Definitions and function used by plugins are in
include/maxscale/session.h
2017-01-19 15:19:40 +02:00
c9a61fec6d
Masking: Use common constants
...
- Response related constants moved from ComPacket to ComResponse
- Constants defined using defines from .../maxscale/protocol/mysql.h
2017-01-19 14:52:13 +02:00
6499994af8
Cache: Use existing defines
2017-01-19 14:52:13 +02:00
1077b313a4
Cache: Handle large packets
...
Basically the only thing that needs to be done is not to mistake
a 8 byte length encoded integer as an EOF packet.
2017-01-19 14:52:13 +02:00
4df3ec501a
Remove extra %s in log message
...
The %s was added twice in two different places.
2017-01-19 14:48:54 +02:00
624d91aeca
Log a message when a SSL listener is created
...
Seeing the type of the listener that was created helps to analyze the
actions done at runtime.
2017-01-19 14:27:14 +02:00
8aa76727d2
Remove explicit long indicator of size defines
2017-01-19 10:42:05 +02:00
7ed7f972b1
Divide monitor.h to internal and interface headers similar to filter.h
...
Definitions and function used by core are in
server/core/maxscale/monitor.h
Definitions and function used by plugins are in
include/maxscale/monitor.h
2017-01-19 09:50:48 +02:00
31c8481f6c
Fix cache parameter default value
2017-01-19 09:26:37 +02:00
8c236c1cdc
Define ComEOF packet length in terms of MYSQL_EOF_PACKET_LEN
2017-01-19 09:26:37 +02:00
cfcd1dc38f
Maxrows filter uses new constants: MYSQL_EOF_PACKET_LEN and MYSQL_OK_PACKET_MIN_LEN
...
New constants MYSQL_EOF_PACKET_LEN, MYSQL_OK_PACKET_MIN_LEN are now
used by max rows filter
2017-01-18 15:47:04 +01:00
e4d6af37a9
Masking: Distinguish between EOF and 8 byte integer
...
When processing the response to a COM_QUERY, the rows will be
terminated by an EOF packet. However, as the type byte of an
EOF packet is 0xFE and the identifying byte of an 8 byte length
encoded integer is also 0xFE it is not possible to distinguish
the two except by also looking at packet length.
2017-01-18 14:31:48 +02:00
00f77bbe69
Fix some leftovers from the SESSION->MXS_SESSION and related renames
...
Renames only.
2017-01-18 11:50:52 +02:00
fbb63f4eb8
Masking: Handle larger than 16MB payloads
...
Larger than 16MB payloads can either be ignored or then they may
cause the session to be aborted.
2017-01-18 08:45:51 +02:00
969e423eb2
Masking: Add large_payload parameter
...
The masking filter will assume payloads less than 2^24 - 1. The
behaviour if payloads larger than than are encountered can be
configured.
The actual implementation follows in a subsequent change.
2017-01-18 08:44:04 +02:00
16a76fcd28
Rename qc_get_type() to qc_get_type_mask()
...
To make it plain that it is a mask that is returned and not a
specific value from the enum qc_query_type_t.
2017-01-18 08:34:53 +02:00
86c97a2109
Analyze binary prepared statements as well
...
Now that the query classifier can be given COM_STMT_PREPARE packets
in addition to COM_QUERY packets, binary prepared statements will
be subject to the same analyses as any other statement.
2017-01-18 08:34:53 +02:00
f7892843b5
Handle prepared named statements in firewall filter
...
Binary prepared statements need to be addressed separately.
2017-01-18 08:34:53 +02:00
5fc7b277da
Change SESSION to MXS_SESSION
...
Some modules didn't use the new MXS_SESSION structure.
2017-01-18 08:31:47 +02:00
19b678abfe
MXS-406: check for log message is now fixed
...
Log message now appears with the right variables check
2017-01-17 16:06:11 +01:00
c62be62618
Add missing galeramon modifications
...
The changes for MXS-406 were lost when the file was formatted and the
changes were rebased.
2017-01-17 16:57:21 +02:00
fb771c8a2e
Rename public types and constants in session.h
...
Preparing to split session.h into module and core sections.
2017-01-17 16:30:14 +02:00
680401cf8e
Rename public types and constants in monitor.h
...
Preparing to split monitor.h into module and core sections. Also
changed a few comments in monitor.h.
2017-01-17 15:47:13 +02:00
f9440a6b35
Parse only valid packets in dbfwfilter
...
The filter attempted to parse all packets that were routed through the
filter.
2017-01-17 14:48:43 +02:00
a48be9badf
Format router modules
...
Formatted router modules with Astyle.
2017-01-17 14:48:43 +02:00
735674bb1b
Format monitor modules
...
Formatted monitor modules with Astyle.
2017-01-17 14:48:41 +02:00
c25b7629f4
Format filter modules
...
Formatted filter modules with Astyle.
2017-01-17 14:47:50 +02:00
4869fd98eb
Format authenticator modules
...
Formatted authenticator modules with Astyle.
2017-01-17 14:47:50 +02:00
1766e3a06b
Format protocol modules
...
Formatted protocol modules with Astyle.
2017-01-17 14:47:50 +02:00
0b6b9c3d81
Format core source code and headers
...
Formatted core source code and headers with Astyle.
2017-01-17 14:47:50 +02:00
f45ac341d8
MXS-406: node comparison function is now split in two different ones
...
Two new routines, compare_node_index and compare_node_priority
routines, can be used by qsort depending on sort_order var
2017-01-17 13:18:02 +01:00
23e40dc0f8
MXS-406: slave nodes are sorted before setting 'wsrep_sst_donor'
...
The slave nodes par od the cluster are sorted by wsrep_local_index or
server priority.
The sorted list od nodes is then used in ‘wsrep_sst_donor’ variable.
Note: candidate master servers are always at the end of the list
2017-01-17 13:18:01 +01:00
5b92a1f467
Remove explicit module name from log messages
...
The module name doesn't need to be logged as MXS_MODULE_NAME will be
automatically added as a prefix to all messages logged by the module.
2017-01-17 12:51:08 +02:00
c59711d04c
Add test for new module command options
...
The tests test the matching of domain names to module names.
2017-01-17 10:47:44 +02:00
1f07adaf0f
Log commit ID for debug builds
...
Logging the commit ID should help identify which commit was used for which
log file when tests are run.
2017-01-17 10:47:43 +02:00
7e65e1ae27
Fix internal test suite
...
The tests were broken by changes to the core.
2017-01-17 10:47:43 +02:00
272666f3b5
Only add unknown parameters as custom server parameters
...
The `authenticator_options` was added as a custom server parameter which
caused it to be duplicated for serialized servers.
2017-01-17 10:47:43 +02:00
e349319400
Add qc_get_preparable_stmt
...
This function will return the preparable statement of a PREPARE
statement as a COM_QUERY GWBUF. That is, once obtained, the normal
query classifier functions can be used for obtaining information
about the preparable statement itself.
2017-01-17 10:10:38 +02:00
7fee90a399
Streamline query classifier API interface
...
- Only types of fixed size used in API interface
- The actual function return value specifies whether the parsing
process succeeded, while "logical" return values are returned
as out arguments.
The wrapper function currently ignores the function return value.
2017-01-17 10:10:38 +02:00
8d2f4707a4
Remove superfluous typedef
2017-01-17 09:31:53 +02:00
af045f182b
MXS-406: added set_donor_nodes in GALERA_MONITOR struct
...
Missing set_donor_nodes field added to GALERA_MONITOR struct
2017-01-16 22:41:49 +01:00