From: Bjorn Munch Date: April 20 2012 5:24am Subject: bzr push into mysql-trunk branch (bjorn.munch:3891 to 3892) List-Archive: http://lists.mysql.com/commits/143493 Message-Id: <201204200524.q3K5O35e029437@acsmt356.oracle.com> MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit 3892 Bjorn Munch 2012-04-20 Some more debugging of running cdb from MTR modified: mysql-test/lib/My/CoreDump.pm 3891 Andrei Elkin 2012-04-19 BUG#13893310 fixing two post-push issues: 1. Valgrind report ==26329== by 0xA3AE2E: my_malloc (my_malloc.c:38) ==26329== by 0xA1A881: init_io_cache (mf_iocache.c:232) ==26329== by 0xA0D883: Rpl_info_file::do_init_info(unsigned long const*, unsigned int) (rpl_info_file.cc:95) ==26329== by 0x9FC69D: Rpl_info_handler::init_info(unsigned long const*, unsigned int) (rpl_info_handler.h:45) ==26329== by 0x9FBE37: Master_info::init_info() (rpl_mi.cc:303) ==26329== by 0x9F6278: init_info(Master_info*, bool, int) (rpl_slave.cc:459) ==26329== by 0x9F96F9: init_slave() (rpl_slave.cc:316) 2. A race condition in rpl_parallel_change_master indicated with mysqltest: At line 86: query 'CHANGE MASTER TO RELAY_LOG_FILE='$relay_file', RELAY_LOG_POS=$relay_pos' succeeded - should have failed with errno 1801. @ mysql-test/suite/rpl/t/rpl_parallel_change_master.test make sure workers doing d2.t1 raced the one that occupied with d1.t1 so that on slow environment as well slave stops having gaps. @ sql/rpl_mi.cc Implementing a deferred cleanup in lack of which expect the valgrind to catch: ==26329== by 0xA3AE2E: my_malloc (my_malloc.c:38) ==26329== by 0xA1A881: init_io_cache (mf_iocache.c:232) ==26329== by 0xA0D883: Rpl_info_file::do_init_info ****** Implementing a deferred cleanup in lack of which expect the valgrind to catch: ==26329== by 0xA3AE2E: my_malloc (my_malloc.c:38) ==26329== by 0xA1A881: init_io_cache (mf_iocache.c:232) ==26329== by 0xA0D883: Rpl_info_file::do_init_info modified: mysql-test/suite/rpl/t/rpl_parallel_change_master.test sql/rpl_mi.cc === modified file 'mysql-test/lib/My/CoreDump.pm' --- a/mysql-test/lib/My/CoreDump.pm 2012-03-06 14:29:42 +0000 +++ b/mysql-test/lib/My/CoreDump.pm 2012-04-20 05:23:24 +0000 @@ -1,5 +1,5 @@ # -*- cperl -*- -# Copyright (c) 2008, 2011, Oracle and/or its affiliates. All rights reserved. +# Copyright (c) 2008, 2012, Oracle and/or its affiliates. All rights reserved. # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -158,7 +158,6 @@ sub cdb_check { sub _cdb { my ($core_name)= @_; - print localtime() . " cdb debug A\n"; print "\nTrying 'cdb' to get a backtrace\n"; return unless -f $core_name; @@ -184,7 +183,6 @@ sub _cdb { # build symbol path (required by cdb if executable was built on # different machine) my $tmp_name= $core_name.".cdb_lmv"; - print localtime() . " cdb debug B\n"; `cdb -z $core_name -c \"lmv;q\" > $tmp_name 2>&1`; print localtime() . " cdb debug C\n"; if ($? >> 8) @@ -195,7 +193,7 @@ sub _cdb { cdb_check(); return; } - + print localtime() . " cdb debug E\n"; open(temp,"< $tmp_name"); my %dirhash=(); while() @@ -211,7 +209,7 @@ sub _cdb { } close(temp); unlink($tmp_name); - + print localtime() . " cdb debug F\n"; my $image_path= join(";", (keys %dirhash),"."); # For better callstacks, setup _NT_SYMBOL_PATH to include @@ -242,6 +240,7 @@ sub _cdb { my $cdb_output= `cdb -c "$cdb_cmd" -z $core_name -i "$image_path" -y "$symbol_path" -t 0 -lines 2>&1`; return if $? >> 8; + print localtime() . " cdb debug G\n"; return unless $cdb_output; # Remove comments (lines starting with *), stack pointer and frame No bundle (reason: useless for push emails).