Commit Graph

145 Commits

Author SHA1 Message Date
b0902402b6 MXS-1940 Turn cache filter non-experimental
Also change the following defaults:

- "selects": Was "verify_cacheable", is now "assume_cacheable"
- "cached_data": Was "shared", is now "thread_specific"
2018-07-02 08:44:39 +03:00
ec4569497e Merge branch '2.1' into 2.2 2018-05-14 10:14:16 +03:00
48aa76e1d4 Fix invalid JSON in masking filter documentation
The example JSON was missing a comma where one was expected.
2018-05-10 22:26:32 +03:00
a544239540 Fix masking filter documentation
The example had invalid JSON in it.
2018-05-10 22:24:14 +03:00
d948fb2dfc MXS-1733 Add documentation 2018-03-26 10:02:57 +03:00
5a33a5a013 Merge branch '2.1' into 2.2 2018-02-08 18:39:45 +02:00
5f4c723fef Fix typo in QLAfilter documentation
The readconnroute module name was written as readconnrouter, with an extra
`r` at the end.
2018-02-08 15:23:39 +02:00
0db538db9a MXS-1583 Treat independent 'users' line in OR-fashion
If there are several 'users' lines in a rule file, for a particular
user, the rules each matching line will be checked independently
until a rule match is found.

That is, the rules of each 'users' line are treated in an OR-fashion
with respect to each other.
2018-01-29 15:25:21 +02:00
b8e72c939d Be specific about the dangers of obfuscation 2018-01-22 13:19:03 +02:00
d928f69cc7 Update and extend luafilter documentation
Fixed the exposed function name and added minimal configuration and script
examples.
2018-01-18 12:22:04 +02:00
ae949881a9 MXS-1511: Add documentation about new parameters 2018-01-17 10:21:50 +02:00
b8e15d2bea Reformat and tune QLA filter documentation
No additions, just tidying up.
2018-01-17 10:21:50 +02:00
d64868f058 Change MySQL[Client|Backend] to MariaDB[Client|Backend] 2018-01-05 10:01:50 +02:00
9689271a34 MXS-1541: Use session ID in topfilter
The topfilter now uses the session ID as the filename suffix.
2018-01-03 08:56:41 +02:00
032b2f3846 MXS-1333: QLAFilter, add option to log execution time
Adds an option 'reply_time' to log_data. When enabled, query execution time
in milliseconds is logged. Execution time is measured as the time between
routeQuery and the first clientReply.
2017-11-15 16:56:39 +02:00
3215458b30 MXS-1461 Introduce 'not_function' rule
Using 'not_function' it is possible to match functions other than
a specific set of ones. That will make it significantly easier to
allow certain functions to be used with certain columns.

The special handling of no arguments to `function` in conjunction
with an allowing filter has been removed. The same effect can now
be achieved, without special handling, using `not_function`, no
arguments and a blocking filter.

Implementation will follow in a subsequent commit.
2017-11-14 13:03:07 +02:00
f52a0acbbe MXS-1474 Document and act in the same way
From the documentation:

   * `never`: When there is an active transaction, no data will be returned
     from the cache, but all requests will always be sent to the backend.
     The cache will be populated inside _explicitly_ read-only transactions.
     Inside transactions that are not explicitly read-only, the cache will
     be populated _until_ the first non-SELECT statement.
   * `read_only_transactions`: The cache will be used and populated inside
     _explicitly_ read-only transactions. Inside transactions that are not
     explicitly read-only, the cache will be populated, but not used
     _until_ the first non-SELECT statement.
   * `all_transactions`: The cache will be used and populated inside
     _explicitly_ read-only transactions. Inside transactions that are not
     explicitly read-only, the cache will be used and populated _until_ the
     first non-SELECT statement.
2017-10-31 10:58:03 +02:00
5068d49cf7 MXS-1474 Update cache documentation 2017-10-31 10:58:03 +02:00
e6af3c3f26 MXS-1474 Update the cache documentation
Introduce the configuration parameter `cache_inside_transactions`.
2017-10-31 10:58:03 +02:00
501c35d7b2 Correct typo in cache documentation 2017-10-19 11:40:21 +03:00
7b6680b8fa Merge branch '2.1' into 2.2 2017-09-27 13:04:14 +03:00
23fb0bf928 MXS-1449 Firewall: Allow 'USE <db>'
When the database firewall filter is used in white-list mode,
'USE <db>' should be allowed. When connecting, it is always
possible to specify the database anyway so restricting
'USE <db>' serves no purpose.
2017-09-27 12:59:20 +03:00
68baf582c8 Deprecate deny and allow in dbfwfilter rules
The `deny` and `allow` tokens are replaced with `match` which better
describes the action. Use of the old tokens causes a warning to be logged.
2017-09-08 09:31:38 +03:00
1fcf4ef59a MXS-1346: Allow combination of function and columns rules
The `function` type rule can now be combined with the `columns` type rule
to form a new rule which matches if specific columns use specific
functions.
2017-09-08 09:31:37 +03:00
ad4e8dad94 MXS-1364 Drop the usage field
But for the most trivial statements did not really provide
useful information.

The arguments of the "function" '=' are now reported.
2017-08-24 09:58:18 +03:00
64642a4d6d MXS-1346: Add new rule to dbfwfilter documentation
Added the new rule to the documentation and mentioned it in the release
notes.
2017-08-24 09:46:03 +03:00
b768d3ca76 MXS-1356: Allow tee filter to be disabled at runtime
Disabling the tee filter at runtime is desirable for cases where the
branched service is not always needed. Migrations and pre-production
setups are one where changes to the branched service are expected and
splitting the queries would result in an error.
2017-08-11 04:09:08 +03:00
ebe9596966 MXS-1345: Allow an empty list of functions
The function type rule now accepts an empty list of functions, allowing
all functions to be blocked by defining an empty function type rule and
setting action=allow.
2017-08-10 09:51:31 +03:00
741c6d9aaf Documentation update for obfuscation method
Example changed to reflect new algorithm output
2017-07-18 11:18:32 +02:00
ac142a1b71 Documentation update with 'obfuscate' rule and 'match' option in 'replace' rule
Documentation update with 'obfuscate' rule and 'match' option in
'replace' rule
2017-07-17 12:16:43 +02:00
674b3887c9 MXS-1301: function matches functionless queries in accept mode
A function type rule matches a query if the query uses a function defined
in the rule. This is the desired behavior for blacklist mode operation
with `action=block`.

When in whitelist mode, all queries must match a rule to be allowed
through. For function type rules, this fact is problematic as queries that
don't use functions are blocked. The desired behavior is to allow the use
of certain functions while preventing the use of others.

The allowed set of functions should always contain the "empty set" (no
functions are used) when the filter is in whitelist mode.
2017-06-30 11:07:18 +03:00
77f44ba92b Add missing match/exclude functionality to tee
The tee filter was missing the match/exclude functionality that was in the
previous implementation. The filter was upgraded to use PCRE2 regular
expressions instead of POSIX regular expressions.

Documented that the match/exclude patterns should use PCRE2 syntax.
2017-06-22 10:39:24 +03:00
bff5e96b1a Query hint to influence Consistent Critical Read Filter
MXS-1067. The CCRFilter will now look at the hints in a write-type
query. The parameter-value combinations "ccr=match" and "ccr=ignore"
are recognized and will override any regex match and ignore settings.

For the hints to work, the HintFilter needs to be present in the filter
chain before the CCRFilter.

Also ran astyle and updated documentation.
2017-06-12 10:51:41 +03:00
476fda9082 Merge branch '2.1' into develop 2017-06-05 13:50:05 +03:00
2990edc424 Update MaskingFilter documentation 2017-06-05 13:47:39 +03:00
7fab3f5d1d MXS-1267: Use local client in tee
The tee filter now uses the local client class to clone the queries. This
imposes some restrictions on how the filter can be used but also makes
MaxScale as a whole more robust.
2017-06-02 13:07:02 +03:00
92b6caa334 Merge branch '2.1' into develop 2017-05-26 15:25:04 +03:00
dfb6fc02c7 Update dbfwfilter documentation
Added examples to each rule.
2017-05-25 09:39:46 +03:00
8a2112cce6 Remove trailing whitespace from documentation
Removed trailing whitespace from all documents.
2017-05-17 13:52:04 +03:00
322983a5f4 Merge branch '2.1' into develop 2017-05-17 13:48:52 +03:00
047ac55a40 minor docs fixes 2017-05-15 08:42:29 +03:00
b85b4010f2 docs typos fixing 2017-05-15 08:42:29 +03:00
9c12e78cce Remove trailing whitespace in tpmfilter documentation
The document had some leftover whitespace.
2017-05-09 20:51:35 +03:00
0ddc876567 Updated the documentation for TPM filter. 2017-05-09 16:33:41 +03:00
b971ad2cf5 Update masking documentation 2017-05-02 13:54:04 +03:00
deb11ae6eb Merge branch '2.1' into develop 2017-04-27 09:11:02 +03:00
f1efe72f66 Additional documentation cleanup for 2.1
Mostly just reflow text (=linebreaks) for better diffs. Some small changes.
Remove Debug-And-Diagnostic-Support.md.
2017-04-25 10:04:31 +03:00
e8dfccb4c8 2.1 doc esak (#127)
* Update MySQL-Replication-Read-Write-Splitting-Tutorial.md

* Update MySQL-Replication-Read-Write-Splitting-Tutorial.md

* Update MySQL-Replication-Read-Write-Splitting-Tutorial.md

* Update MySQL-Cluster-Setup.md

* Update Administration-Tutorial.md

* Update Administration-Tutorial.md

* Update Galera-Cluster-Connection-Routing-Tutorial.md

* Update CLI.md

* Update ReadWriteSplit.md

* Update Tee-Filter.md

* Update CCRFilter.md

* Update RabbitMQ-Filter.md

* Update Debug-And-Diagnostic-Support.md

* Update MaxBinlogCheck.md

* Update Configuration-Guide.md

* Update Module-Commands.md
2017-04-21 10:49:20 +03:00
695ba19965 Massimiliano pinto doc update 2.1 (#125)
* Update Nagios-Plugins.md

* Update MM-Monitor.md

* Update Nagios-Plugins.md

* Update Nagios-Plugins.md

* Update Galera-Cluster-Connection-Routing-Tutorial.md

* Update Galera-Cluster-Connection-Routing-Tutorial.md

* Update RabbitMQ-Setup-And-MaxScale-Integration.md

* Update MaxScale-Tutorial.md

* Update Cache.md

* Update Transaction-Performance-Monitoring-Filter.md

* Update RabbitMQ-Consumer-Client.md

* Update Building-MaxScale-from-Source-Code.md

* Update MariaDB-MaxScale-Installation-Guide.md

* Update Install-MariaDB-MaxScale-Using-a-Tarball.md

* Update RabbitMQ-Setup-And-MaxScale-Integration.md

* Update RabbitMQ-Consumer-Client.md
2017-04-20 13:36:13 +02:00
33b809eec1 Do not build storage_rocksdb by default 2017-04-20 13:12:46 +03:00