312469dca2
Merge branch '2.3' into 2.4
2019-10-07 16:17:53 +03:00
e7e40b0179
MXS-2713 Classify SET PASSWORD as QUERY_TYPE_WRITE
...
A change of the password is replicated to the slaves, so it
must only be sent to the master.
2019-10-07 14:33:53 +03:00
2a7f320cf4
MXS-2713 Add test that reveals problem
2019-10-07 14:24:06 +03:00
0dce20e5e7
Merge branch '2.3' into 2.4
2019-09-27 12:30:58 +03:00
c01ecfed05
MXS-2699 Add test that reveals other bug
2019-09-27 12:23:04 +03:00
0c2a84c3a5
MXS-2699 Add test that reveals problem
2019-09-27 12:23:04 +03:00
19487d2bfb
Merge branch '2.3' into 2.4
2019-09-20 09:36:23 +03:00
aa7be1447d
MXS-2688 Handle SET [ROLE|NAMES|PASSWORD|CHARACTER] explicitly
...
It's not correct to claim that they would modify a system variable,
so they are purely classified as QUERY_TYPE_SESSION_WRITE.
2019-09-20 09:27:38 +03:00
f587ec191d
MXS-2688 Add QC operator QUERY_OP_SET
...
Allows RWS to unconditionally send all SET-statements to
all servers.
2019-09-20 09:27:38 +03:00
5e2d9f599b
Merge branch '2.3' into 2.4
2019-09-16 09:50:05 +03:00
9969f21414
MXS-2674 Add test that reveals bug
2019-09-13 15:31:06 +03:00
0ba779d5a2
Update 2.4.0 Change Date
2019-06-25 10:11:55 +03:00
b8d601aab2
MXS-2250 Reveal table information for 'DESCRIBE tbl'
...
When a statement like 'DESCRIBE tbl' is classified, the table
name will now be available so that a router can check whether the
table is a temporary one. In that case, the statement must be sent
to the master.
2019-06-05 14:28:45 +03:00
b635cc92ab
MXS-1783 Add 10.4 support
...
qc_mysqlembedded can now be built using the embedded library from
MariaDB 10.4.
2019-05-31 15:12:57 +03:00
2472911aac
Fix qc compare.cc build error
2019-05-15 11:02:53 +03:00
f4e9f68615
Fix test_qc_comparecreate
2019-05-14 15:44:49 +03:00
de95fcc9d6
Format rest of the sources
2019-05-10 10:31:12 +03:00
24df547ac8
Make QC unit test names consistent with other tests
...
All the other tests have their names in lowercase.
2019-05-06 15:38:42 +03:00
524a083203
MXS-2439 Do not classify implicit commits as commits
...
The type mask of CREATE, ALTER, etc. that cause an implicit commit
will no longer contain the bit QUERY_TYPE_COMMIT.
As an implicit commit does not change the transaction state as seen
by MaxScale, it does not make sense to claim that the statement is
a commit.
2019-04-18 11:19:23 +03:00
3127aa85c5
MXS-2432 Add test that reveals issue
...
RESET is neither parsed not tokenized, so RESET statements ends
up being sent to the master. That is fine for all but RESET QUERY
CACHE that should be sent to all servers.
2019-04-12 14:51:01 +03:00
c643f9bc8d
Merge branch '2.3' into develop
2019-04-12 13:23:49 +03:00
62f2a86a5f
MXS-2431 Add test that reveals the problem
2019-04-12 10:30:36 +03:00
6bc2c54081
Merge commit 'a78f0fbe2537542dc7f3f0dd8b19b93ac8d9d7f8' into develop
2019-03-28 13:53:40 +02:00
f37340e9fd
MXS-2397 Provide context information for fields
...
The query classifier now returns contextual information for a fields;
does it appear in the (right hand side) of a UNION or in a SUBQUERY.
2019-03-25 15:24:35 +02:00
42b5c39f43
Merge branch '2.3' into develop
2019-02-07 10:50:27 +02:00
cc6665c732
Add solo mode to compare
...
In this mode the compare program does a sanity check where it compares the
output of a classifier when a statement is classified multiple times. The
main use-case for this is to get the verbose output generated when the -v3
option is added, not the sanity check itself.
2019-02-06 13:55:41 +02:00
6038f1f386
Merge branch '2.3' into develop
2019-02-01 13:55:54 +02:00
f335dba2c0
Fix stack buffer overflow in compare
...
The buffer was three characters short.
2019-01-28 17:35:27 +02:00
3b55893a20
Combine maxscale/buffer.h with maxscale/buffer.hh
2019-01-17 12:37:40 +02:00
d4674faa7d
Convert maxscale/query_classifier.h to .hh
...
The header was not merged with queryclassifier.hh since the latter
does not include the former.
2019-01-15 18:18:39 +02:00
269ab712bc
Merge branch '2.3' into develop
2019-01-09 09:15:30 +02:00
78ea12b4c1
Merge branch '2.2' into 2.3
2019-01-09 09:13:59 +02:00
a456168fd0
MXS-2248 Add test that reveals problem
2019-01-09 09:11:49 +02:00
2c6e45a770
MXS-2242 Add test that reveals problem
2019-01-08 16:00:02 +02:00
7a7545f8f7
Merge branch '2.2' into 2.3
2019-01-08 15:59:03 +02:00
f94ddadc18
MXS-2242 Add test that reveals problem
2019-01-08 15:55:41 +02:00
eacf88f6a5
MXS-2220 Add server version and type information struct
...
The old fields are still used.
2018-12-19 13:18:16 +02:00
c0c9a9858d
MXS-2197 Rename maxscale/log.h to maxscale/log.hh
...
In files either include maxscale/log.hh or remove include entirelly
as maxscale/ccdefs.hh includes it.
2018-12-10 12:58:17 +02:00
60cbeaf287
MXS-2208 Compile classify as C++
2018-12-10 12:50:07 +02:00
9f721f725e
MXS-2205 Convert maxscale/protocol/mysql.h to .hh
2018-12-05 11:12:20 +02:00
6c281d55e2
Merge branch '2.3' into develop
2018-12-04 11:23:56 +02:00
1a78f2ffbb
Merge branch '2.2' into 2.3
2018-12-04 11:23:31 +02:00
d9ae298102
MXS-2205 Combine maxscale/server.h with maxscale/server.hh
...
The server-struct is still used in several .h-files.
2018-12-03 16:47:27 +02:00
964180804c
MXS-2207 Add test that reveals problem
...
With qc_mysqlembedded statements like
SET STATEMENT ... FOR stmt;
are always classified as READ, although their type should be
that of stmt.
2018-12-03 15:59:43 +02:00
7b001994b4
MXS-1978 Change qc_sqlite behaviour and update test
...
A statement like
SELECT ... INTO OUTFILE|DUMPFILE ...
is now classified as a QUERY_TYPE_WRITE, instead of as
QUERY_TYPE_GSYSVAR_WRITE so that it will be sent only to the
master.
2018-11-01 11:24:44 +02:00
9d8a49af5d
MXS-1978 Add test that tests current behaviour
2018-11-01 11:24:44 +02:00
66227301aa
Merge branch '2.2' into develop
2018-09-27 11:47:32 +03:00
743daa5755
MXS-2043 Create test that exposes problem
...
A statement like
SELECT a FROM tbl FOR UPDATE;
should be classified like QUERY_TYPE_WRITE so as to be sent
to master.
2018-09-27 10:17:47 +03:00
71ffef5708
Partially revert 4ba011266843857bbd3201e5b925a47e88e1808f
...
Add back leading operator enforcement.
2018-09-20 15:57:30 +03:00
c447e5cf15
Uncrustify maxscale
...
See script directory for method. The script to run in the top level
MaxScale directory is called maxscale-uncrustify.sh, which uses
another script, list-src, from the same directory (so you need to set
your PATH). The uncrustify version was 0.66.
2018-09-09 22:26:19 +03:00