Insifficient test coverage for oqgraph
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
MariaDB |
Won't Fix
|
High
|
Arjen Lentz | ||
OQGRAPH |
In Progress
|
High
|
Open Query core |
Bug Description
It appears that the test coverage provided by the oqgraph MTR suite is not sufficient. Since it was not possible to obtain gcov numbers, the observations below are based on a visual examination of the test suite.
It appears that the following is missing from the test suite:
- a complete list of the SELECT statements that are accepted by the engine, as described in
the manual, including those with latch=0 or latch = NULL;
- DML and SELECT statements with weight != 0
- queries that will be rejected by the storage engine, including invalid DDL/ALTER, DML that modifies non-modifiable columns, CREATE TABLE with an invalid layout, etc.
- an enumeration of the DML/DDL/ALTER statements that are accepted by the engine, so that all the engine capabilities the handler advertises and all the API calls are exercised, including ALTER ENGINE=, INSERT ... SELECT, CREATE .. SELECT etc.
- verification of each statement after it is executed, e.g. a SELECT must be done after TRUNCATE for a proper test for truncation; an I_S query and CREATE, etc. must be performed after TRUNCATE to test that the table is truly gone, etc.;
- a dataset that is sized appropriately for MTR execution (10K nodes?). Either in the form of INSERT statements or a stored procedure, plus some SELECT queries on top of that dataset;
- joins and other cross-engine operations;
Changed in maria: | |
milestone: | none → 5.2 |
Changed in maria: | |
status: | New → Confirmed |
Changed in oqgraph: | |
status: | New → Confirmed |
assignee: | nobody → Open Query core (openquery-core) |
Changed in maria: | |
assignee: | nobody → Arjen Lentz (arjen-lentz) |
Changed in oqgraph: | |
importance: | Undecided → High |
Changed in maria: | |
importance: | Undecided → High |
I am attaching the coverage files for oqgraph. Lines marked with #### are not covered.