Re: [Maria-developers] Bugs in GTID implementation
Pavel Ivanov <pivanof@google.com> writes:
way to fix them. Also if you can please look at the attached patch containing fixes to all tests after GTID addition. There are some questionable changes in there, so I would appreciate if you could evaluate its correctness and consider including it into MariaDB tree.
Right, so now I finished going through the whole testsuite, making all necessary adjustments to .result files (and a bit to the test cases). This is a _huge_ patch, 70k lines :-( This is due to the new GTID events, every SHOW BINLOG EVENTS and mysqldump output needs updating. I did briefly consider instead trying to filter the output to make it identical to the old one, to avoid the huge .result file changes, but I'm not really sure that is any better in the long run... So, I did this in my 10.0-mdev26 tree, which is based on 10.0-base. I noticed at least two things from your patch that are not part of this: - The --let $keep_gtid_events= 1 statements. I am not sure how this $keep_gtid_events came into the 10.0 tree. It is part of the MySQL 5.6 GTID implementation, which we do not want to merge. I would suggest you instead just remove it from show_events.inc. - There were some new testcases in mysql-test/suite/perfschema in your patch that are not in my tree. They update some digests, I did not investigate what those are about, but I will handle when I merge to 10.0 of course. Thanks for your efforts on preparing the initial patch. It was quite a nice help as a starting point, though I did do some parts of it different due to style or correctness issues. I'm likely to have missed a couple cases of course, but at least this should be a starting point, just let me know if you experience more failures. I do see a non-repatable failure in main.plugin and a DBUG crash which is also in other maria trees, I'll look at those next. The fix is pushed to lp:~maria-captains/maria/10.0-mdev26 as usual. - Kristian.
On Tue, Mar 26, 2013 at 2:45 AM, Kristian Nielsen <knielsen@knielsen-hq.org> wrote:
So, I did this in my 10.0-mdev26 tree, which is based on 10.0-base. I noticed at least two things from your patch that are not part of this:
- The --let $keep_gtid_events= 1 statements. I am not sure how this $keep_gtid_events came into the 10.0 tree. It is part of the MySQL 5.6 GTID implementation, which we do not want to merge. I would suggest you instead just remove it from show_events.inc.
I'd guess this $keep_gtid_events was included in 10.0 tree by mistake. I've rechecked later after sending you a patch and saw that it's actually not used in any tests. So I came to the same conclusion that $keep_gtid_events should be just removed from show_events.inc.
- There were some new testcases in mysql-test/suite/perfschema in your patch that are not in my tree. They update some digests, I did not investigate what those are about, but I will handle when I merge to 10.0 of course.
As far as I noticed these digests change every time some change in mysql database is made, sometimes after other changes too. And I actually don't understand what these tests are testing if they need such adjustments all the time...
I'm likely to have missed a couple cases of course, but at least this should be a starting point, just let me know if you experience more failures. I do see a non-repatable failure in main.plugin and a DBUG crash which is also in other maria trees, I'll look at those next.
I see some other non-repeatable failures too (most frequently in rpl.rpl_corruption). I'll surely let you know if I find some problems. :) Pavel
Pavel Ivanov <pivanof@google.com> writes:
As far as I noticed these digests change every time some change in mysql database is made, sometimes after other changes too. And I actually don't understand what these tests are testing if they need such adjustments all the time...
Yeah, good question ...
I'm likely to have missed a couple cases of course, but at least this should be a starting point, just let me know if you experience more failures. I do see a non-repatable failure in main.plugin and a DBUG crash which is also in other maria trees, I'll look at those next.
I see some other non-repeatable failures too (most frequently in rpl.rpl_corruption). I'll surely let you know if I find some problems. :)
I've now pushed fixes for the above two problems. The DBUG crash was actually an existing bug (also seen even in 5.5 tree), just for some reason it became much easier to trigger after my changes. And yes, it occured mostly in rpl.rpl_corruption, so maybe it is the same one you saw, should be fixed now. The other problem was a wrong locking order seen sometimes in main.plugin, should be fixed now also. - Kristian.
On Tue, Mar 26, 2013 at 6:48 AM, Kristian Nielsen <knielsen@knielsen-hq.org> wrote:
The other problem was a wrong locking order seen sometimes in main.plugin, should be fixed now also.
Kristian, apparently with the fix to this locking problem you introduced "variable may be used uninitialized" warning again -- variable tmp in the function show_slave_running() in sql/mysqld.cc. Pavel
participants (2)
-
Kristian Nielsen
-
Pavel Ivanov