Details
-
Task
-
Status: Closed (View Workflow)
-
Major
-
Resolution: Fixed
-
None
Description
This is a part of MDEV-23766.
One can run the entire main testuite with optimizer trace enabled like so:
./mysql-test-run --suite=main --mysqld=--optimizer_trace=enabled=on
|
On a 10.5-based tree, it fails just one test for me:
CURRENT_TEST: main.opt_trace
|
--- /optane/dev-git2/10.5-opt-trace-fix/mysql-test/main/opt_trace.result 2021-10-22 17:44:19.947288399 +0300
|
+++ /optane/dev-git2/10.5-opt-trace-fix/mysql-test/main/opt_trace.reject 2021-10-22 18:05:12.727056238 +0300
|
@@ -6,7 +6,7 @@
|
OPTIMIZER_TRACE INSUFFICIENT_PRIVILEGES
|
show variables like 'optimizer_trace';
|
Variable_name Value
|
-optimizer_trace enabled=off
|
+optimizer_trace enabled=on
|
set optimizer_trace="enabled=on";
|
show variables like 'optimizer_trace';
|
Variable_name Value
|
|
mysqltest: Result length mismatch
|
|
If we can get that test to pass, we can get the buildbot to run this.
We can run non-main testsuites as well, but this is considered to have less benefit.
Attachments
Issue Links
- blocks
-
MDEV-23766 Optimizer tracing code is prone to producing invalid JSON
-
- Closed
-
idea #1:
move the failing check (the check for the default @@optimizer_trace value) into a separate test, e.g. main/opt_trace_default.test
and then run
./mysql-test-run --mysqld=--optimizer_trace=enabled=on --skip-test=main.opt_trace_default
idea #2:
put the following code in main/opt_trace.test
if ( SOME_VARIABLE_THAT_HAS_MYSQLD_ARGS includes '--mysqld=--optimizer_trace) {
skip "This test cannot be run when one specifies optimizer_trace setting from command line
}
I'm not sure how to express this condition