NamedServerFilter: Add HINT_ROUTE_TO_ALL support
This was already supported by HintRouter. The tag for the MaxScale config file is "->all". Also add note to Documentation and reformat it a bit.
This commit is contained in:
@ -66,10 +66,14 @@ match01=^SELECT
|
|||||||
|
|
||||||
This is the hint which will be attached to the queries matching the regex. If a
|
This is the hint which will be attached to the queries matching the regex. If a
|
||||||
compatible router is used in the service the query will be routed accordingly.
|
compatible router is used in the service the query will be routed accordingly.
|
||||||
The target can be a server name, a list of server names (comma-separated),
|
The target can be one of the following:
|
||||||
`->master` or `->slave`. The server names add the names as hints (one name per
|
|
||||||
hint). `->master` adds a *route-to-master*- hint and `->slave` adds a
|
* a server name (adds a `HINT_ROUTE_TO_NAMED_SERVER` hint)
|
||||||
*route-to-slave*-hint.
|
* a list of server names, comma-separated (adds several
|
||||||
|
`HINT_ROUTE_TO_NAMED_SERVER` hints)
|
||||||
|
* `->master` (adds a `HINT_ROUTE_TO_MASTER` hint)
|
||||||
|
* `->slave` (adds a `HINT_ROUTE_TO_SLAVE` hint)
|
||||||
|
* `->all` (adds a `HINT_ROUTE_TO_ALL` hint)
|
||||||
|
|
||||||
```
|
```
|
||||||
target01=MyServer2
|
target01=MyServer2
|
||||||
|
@ -29,8 +29,8 @@ typedef enum
|
|||||||
HINT_ROUTE_TO_MASTER = 1,
|
HINT_ROUTE_TO_MASTER = 1,
|
||||||
HINT_ROUTE_TO_SLAVE,
|
HINT_ROUTE_TO_SLAVE,
|
||||||
HINT_ROUTE_TO_NAMED_SERVER,
|
HINT_ROUTE_TO_NAMED_SERVER,
|
||||||
HINT_ROUTE_TO_UPTODATE_SERVER,
|
HINT_ROUTE_TO_UPTODATE_SERVER, /*< not supported by RWSplit and HintRouter */
|
||||||
HINT_ROUTE_TO_ALL, /*< not implemented yet */
|
HINT_ROUTE_TO_ALL, /*< not supported by RWSplit, supported by HintRouter */
|
||||||
HINT_PARAMETER
|
HINT_PARAMETER
|
||||||
} HINT_TYPE;
|
} HINT_TYPE;
|
||||||
|
|
||||||
|
@ -432,6 +432,11 @@ int RegexToServers::add_servers(string server_names, bool legacy_mode)
|
|||||||
m_targets.push_back(names_arr[0]);
|
m_targets.push_back(names_arr[0]);
|
||||||
m_htype = HINT_ROUTE_TO_SLAVE;
|
m_htype = HINT_ROUTE_TO_SLAVE;
|
||||||
}
|
}
|
||||||
|
else if (strcmp(names_arr[0], "->all") == 0)
|
||||||
|
{
|
||||||
|
m_targets.push_back(names_arr[0]);
|
||||||
|
m_htype = HINT_ROUTE_TO_ALL;
|
||||||
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
error = true;
|
error = true;
|
||||||
|
Reference in New Issue
Block a user