Commit Graph

89 Commits

Author SHA1 Message Date
27a43fdf9d Merge branch '2.3' into 2.4 2020-12-11 16:38:43 +02:00
e3aff8babe MXS-3314: Document causal_reads limitations
Also documented the fact that CCRFilter doesn't support prepared
statements.
2020-12-11 16:34:08 +02:00
4a2831e731 Clarify transaction_replay documentation
The parameter controls three other parameters and overrides their
configured values.
2020-12-09 12:24:27 +02:00
caedf79464 Merge branch '2.3' into 2.4 2020-08-28 14:24:16 +03:00
ebdb9655e6 MXS-3143: Route FOUND_ROWS to last used target
This will cause the query to be routed to the same server where a possible
SQL_CALC_FOUND_ROWS was executed.
2020-08-28 11:49:07 +03:00
727aeb4a08 Merge branch '2.3' into 2.4 2020-06-02 10:53:05 +03:00
11960a1e93 Document transaction_replay_max_size inner workings
The documentation didn't explain how to estimate how much memory a
transaction takes and whether it was a global limit or a per session
limit.
2020-06-02 10:17:39 +03:00
6cc16ac16b Document idle session behavior with fail_on_write
The behavior is not very obvious. To prevent excessive numbers of idle
sessions, a idle timeout should be configured.
2020-05-25 10:27:52 +03:00
7b4d26e26a Document prepared statement tmp table limitation
Also moved the transaction replay limitations to the limitations section.
2020-05-13 13:48:22 +03:00
927db1fc6e Clarify master_accept_reads 2020-04-09 11:48:46 +03:00
be508fe5d9 MXS-2873: Document more router diagnostics
Documented readconnroute and schemarouter router diagnostics. The
duplicated fields that are already in the general service diagnostic
output are not documented with the hopes that they can be eventually
removed.
2020-02-18 09:45:02 +02:00
2bc2ab2196 MXS-2873: Document readwritesplit router diagnostics
The REST API output is now documented in the router documentation. The
same will be done for other routers as well.
2020-02-18 09:23:13 +02:00
6c14ac7829 MXS-2834: Make retrying of trx deadlocks configurable
The behavior is not desirable in all cases and should be enabled only if
needed.
2020-01-11 11:53:01 +02:00
08aba4b3c9 MXS-2498: Document temp tables in multi-statments
When a temporary table is created with a multi-statement query, it won't
be detected by MaxScale.

Also removed the wrong limitations section from the document.
2019-12-19 08:53:32 +02:00
9dceff7d9d Merge branch '2.3' into 2.4 2019-12-03 10:05:34 +02:00
1e57c2cb67 MXS-2643: Mention Galera in causal_reads documentation
causal_reads does not work with servers that update their state via
mechanisms other than the standard replication. In practice this is just
another Galera limitation.
2019-12-03 09:58:23 +02:00
2a93d86f1a MXS-2655 Document session command limitation 2019-09-04 15:40:52 +03:00
29e5af1ded Move router limitations to router documentation
This way the limitations are easier to find and are consistent across the
modules.
2019-05-17 14:44:49 +03:00
24ca503b0f Document transaction_replay_attempts
Also added the new readwritesplit parameters to the 2.4.0 release notes.
2019-05-17 14:44:12 +03:00
ea243fd8ba MXS-2329 Use durations in readwritesplit 2019-04-30 13:02:53 +03:00
f812302d62 Document readwritesplit behavior with server states 2019-04-04 13:00:35 +03:00
e659c6cc73 Merge branch '2.3' into develop 2019-04-01 13:24:30 +03:00
3977207d12 Update transaction_replay documentation
Removed the confusing paragraph.
2019-03-29 14:23:15 +02:00
4f8d6d1853 Fix transaction_replay documentation
The documentation stated that MVCC reads weren't safe with
transaction_replay when in reality they are not safe in general and
transaction_replay has no effect on it.
2019-03-29 10:35:41 +02:00
9ddd186550 MXS-2313: Update rank documentation
Updated the value types, added a simpler example and created a separate
section in readwritesplit documentation on the behavior of ranked servers.
2019-03-18 13:12:59 +02:00
24ea222ed6 MXS-2350: Allow lazy connection creation
The lazy connection creation reduces the burden that short sessions place
on the backend servers. This also prevents the problems caused by early
disconnections that happen when only one server is used but multiple
connections are created. This does not solve the problem (MXS-619) but it
does mitigate it to acceptable levels.

This commit also adds a change to the weighting algorithm that prefers
existing connections over unopened ones. This helps avoid the
flip-flopping that happens when the absolute scores are very similar. The
hard-coded value might need to be tuned once testing is done.
2019-03-08 08:20:44 +02:00
6ab3985164 Auto-generate ToC
The KB supports the [TOC] tag that auto-generates the table of contents.
2019-01-31 14:23:27 +02:00
260ce9b8b8 MXS-2300: Add session command pruning
This commit adds a new parameter that, when enabled, prunes the session
command history to a known length. This makes it possible to keep a
client-side pooled connection open indefinitely at the cost of making
reconnections theoretically unsafe. In practice the maximum history length
can be set to a value that encompasses a single session using the pooled
connection with no risk to session state integrity. The default history
length of 50 commands is quite likely to be adequate for the majority of
use-cases.
2019-01-31 14:23:26 +02:00
7f978f275f MXS-2223 Log a message when a slave is discriminated due to replication lag
Both the replication lag and the message printing state are saved in SERVER,
although the values are mostly used by readwritesplit. A log message is printed
both when a server goes over the limit and when it comes back below.
Because of concurrency issues, a message may be printed multiple times before
different threads detect the new message state.

Documentation updated to explain the change.
2019-01-21 13:02:18 +02:00
88f234fdcd MXS-2214: Fix object names in documentation
The object names now always use a valid and supported form.
2019-01-03 09:37:59 +02:00
1a78f2ffbb Merge branch '2.2' into 2.3 2018-12-04 11:23:31 +02:00
cb878f18b7 Update max_slave_connections documentation
Corrected the default value and added a more detailed explanation of what
the parameter does and how it affects client connections.
2018-11-29 08:47:11 +02:00
ff22624d3c Add table of contents to router documentation
The TOC was added only to the long documentation files to make them easier
to navigate. Also modified the headings for Avro and Binlog routers and did
some minor cleanup.
2018-11-26 10:32:08 +02:00
dcf53da209 Enable connection_keepalive by default
Enabling the feature by default prevents the master connection from dying
during times when there are very little or no writes. Having a modest ping
interval of 300 seconds serves to minimize the amount of extra work that
both MaxScale and the server have to do while still keeping the
connections in good shape.
2018-11-26 09:42:11 +02:00
4341c2b6e2 MXS-2142: Set causal_reads_timeout default to 10
The causal_reads_timeout default value is too long when considering the
behavioral changes that MXS-2141 introduced. With a 10 second default
value, a result is returned to the client in a reasonable amount of time.
2018-11-06 15:09:14 +02:00
e56372b153 MXS-2141: Retry query on master if it times out on slave
With causal_reads enabled, the query would return with an error if the
slave was not able to catch up to the master fast enough. By automatically
retrying the query on the master, we're guaranteed that a valid result is
always returned to the client.
2018-11-06 15:09:14 +02:00
a2ef874fe6 Fix max_sescmd_history documentation
The session commands are now always stored but they are stored as
references. Also clarified that the feature was disabled in older
versions.
2018-10-16 10:59:14 +03:00
9c52ba5c07 Update release notes and documentation for the Throttle Filter
and Adaptive Routing
2018-10-05 13:52:42 +03:00
d5dbad19bb Update readwritesplit documentation
Fixed a few typos, added the 10.2 relese where last_gtid tracking was
enabled, changed wording.
2018-10-03 08:41:44 +03:00
8b39373577 MXS-1929: Document readwritesplit runtime changes
Added a note about the new behavior in 2.3.
2018-08-13 10:28:01 +03:00
437a0b92d2 Update ReadWriteSplit documentation
router_options are removed and thus do not need to be explained.
2018-07-17 11:52:21 +03:00
391618d53b MXS-1549: Add documentation for optimistic_trx
Added parameter documentation and explained the limitations it has.
2018-07-02 13:29:18 +03:00
3dd84e170f MXS-1778: Document causal_reads parameter
Documented and explained the feature and how it works.
2018-05-22 17:46:26 +03:00
2e8c19f6be Merge branch '2.2' into develop 2018-05-21 10:06:20 +03:00
bdde3c44d9 Document slave_selection_criteria and weightby interaction
Documented how the slave_selection_criteria and server weights work.
2018-05-21 09:50:43 +03:00
092532745d MXS-1507: Add transaction size limit
Added the `transaction_replay_max_size` parameter that controls the
maximum size of a transaction that can be replayed. If the limit is
exceeded, the stored statements are released thus preventing the
transaction from being replayed.

This limitation prevents accidental misuse of the transaction replaying
system when autocommit is disabled. It also allows the user to control the
amount of memory that MaxScale will use.
2018-04-26 13:44:26 +03:00
cb5917b346 MXS-1507: Clarify transaction replay limitations
Only transactions that return identical results can be replayed.
2018-04-26 13:44:26 +03:00
2848f96945 MXS-1507: Make transaction replay configurable
The transaction retrying behavior is now configurable and documented. The
`transaction_replay` parameter implicitly enables the required
functionality in the router that it needs.
2018-04-26 13:44:25 +03:00
23bc8b6db6 MXS-1506: Document delayed_retry
Document the parameters and how they interact with `master_reconnection`.
2018-04-10 15:31:51 +03:00
ce853d3f7f MXS-1503: Enable limited session command history
Enabling the session command history but limiting it to a history of 50
commands allows reconnections for sessions that don't change the state too
often.

As pooled connections will exceed this limit quite fast, they are not able
to reconnect to servers once connections are lost. To solve this problem,
the session command history needs a compaction process that removes
redundant history.
2018-04-03 13:30:53 +03:00