Sergei Golubchik <serg@askmonty.org> writes:
In general, the direction I'm moving in is to remove as much of hard-coded special cases from mtr as possible.
Sure, but these extra checks for skip in mtr_cases are not hard-coded special cases, they are optimisations to speed up the suite. They don't change semantics, they just make things faster by avoiding unnecessary server restarts. Please let's keep them (and lets add more as needed).
Yes. I plan to address that too. One idea is to cache check results (like, if have_debug.inc failed once, all debug tests will be skipped at once). MDEV-105
Well, then let's wait with removing the optimisations until this is implemented ... ?
Which doesn't mean we cannot "move everything in mysql-test-run.pl" :) If every test is a perl module, and mtr automatically discovers and loads them as needed - then there will be only one language to deal with and everything will be in mtr.
But it's a big incompatible change :(
Not incompatible - the idea would be to replace the `mysqltest` interpreter with Perl code that runs inside mysql-test-run. Test cases would remain identical (though we could then clean them up a lot). Anyway, this is not something we would want to do while we're still merging from MySQL@Oracle - if ever ... - Kristian.