From: Bjorn Munch Date: January 21 2011 12:58pm Subject: bzr commit into mysql-5.1-mtr branch (bjorn.munch:2975) Bug#59063 List-Archive: http://lists.mysql.com/commits/129331 X-Bug: 59063 Message-Id: <201101211258.p0LCwYkQ012938@khepri15.norway.sun.com> MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="===============0993354925==" --===============0993354925== MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Content-Disposition: inline #At file:///home/bm136801/my/expwin-51/ based on revid:bjorn.munch@stripped 2975 Bjorn Munch 2011-01-21 Bug #59063 rpl_migration_crash_safe fails on Windows Race condition may occur: mtr sees the .expect file but it's empty Fix: wait and try again if file is empty Addendum: try again if line isn't 'wait' or 'restart' Also added verbose printout of extra restart options modified: mysql-test/mysql-test-run.pl === modified file 'mysql-test/mysql-test-run.pl' --- a/mysql-test/mysql-test-run.pl 2011-01-18 10:03:44 +0000 +++ b/mysql-test/mysql-test-run.pl 2011-01-21 12:57:21 +0000 @@ -4093,8 +4093,10 @@ sub check_expected_crash_and_restart { { mtr_verbose("Crash was expected, file '$expect_file' exists"); - for (my $waits = 0; $waits < 50; $waits++) + for (my $waits = 0; $waits < 50; mtr_milli_sleep(100), $waits++) { + # Race condition seen on Windows: try again until file not empty + next if -z $expect_file; # If last line in expect file starts with "wait" # sleep a little and try again, thus allowing the # test script to control when the server should start @@ -4103,10 +4105,11 @@ sub check_expected_crash_and_restart { if ($last_line =~ /^wait/ ) { mtr_verbose("Test says wait before restart") if $waits == 0; - mtr_milli_sleep(100); next; } + # Ignore any partial or unknown command + next unless $last_line =~ /^restart/; # If last line begins "restart:", the rest of the line is read as # extra command line options to add to the restarted mysqld. # Anything other than 'wait' or 'restart:' (with a colon) will @@ -4471,6 +4474,8 @@ sub mysqld_start ($$) { my @all_opts= @$extra_opts; if (exists $mysqld->{'restart_opts'}) { push (@all_opts, @{$mysqld->{'restart_opts'}}); + mtr_verbose(My::Options::toStr("mysqld_start restart", + @{$mysqld->{'restart_opts'}})); } mysqld_arguments($args,$mysqld,\@all_opts); --===============0993354925== MIME-Version: 1.0 Content-Type: text/bzr-bundle; charset="us-ascii"; name="bzr/bjorn.munch@stripped" Content-Transfer-Encoding: 7bit Content-Disposition: inline # Bazaar merge directive format 2 (Bazaar 0.90) # revision_id: bjorn.munch@stripped # target_branch: file:///home/bm136801/my/expwin-51/ # testament_sha1: 48a90be8102295febb60e6b6e9ad389fc87238e6 # timestamp: 2011-01-21 13:58:34 +0100 # base_revision_id: bjorn.munch@stripped\ # fw4rz2qzcny5purh # # Begin bundle IyBCYXphYXIgcmV2aXNpb24gYnVuZGxlIHY0CiMKQlpoOTFBWSZTWVFGX9sAAe3fgFAwXO///3Mi mIG////7UATaltNU3XNdelbq93dYSiI0EwIwjQyNSPRPU8SDI0PSNGmm1BJIIyATCCGp6NR6mgAN AAA0BoEaEFM0jFM8VNGj9KD1MAEGnqMQYYoJlPRNE9NEBtT0mjI0BoAAANBolGj1GNEDQDRoeo9Q AAAAARgZMQruHnz7/GM2JffXAHrmpT0LKLbrCGJgkjfiz0wvgfgqEYV0tXv9JXp7PL9zs8PDX0+1 yiqh5e/mlsjpBd+pyauGEjCmhxO/ao0/g7tWWczHt9RXRDGEcJqNU3a90oSGUgsm5rJxk9TplXhJ 5eDsN+bqKW2BnizPE6stN+emAVQ4Km8qT1VHCsZO2Wj+VPHbj0o4vRWtqPMQlrzqjKG2HB5zy2i4 mOD8kh9YlJw6UI+aIh1LnHImwhyQrvDqTwQkHJjJldNgO4AGVVFE2gHlYJERioFJ2nDmqEXVKaks jTrvEQtE4IRfOAqaDrgKqOTZ8V7jLhbQVGTqTssrOpy1UJxRLKvLbseRPKLRT0G7AWdwjRChRLMg yWlgQFQnJMLYJpGj1xPZfaWRT3vJHX/nQqxUkYrgUPCZAulAhvIzGmhtCdpaRKo/06JiJeWEcM+m UfTQFrjLKPszInLTHIf4tLMHU1CaTYt4qry/M2tZk0HNB9nPeN1Zzq1z2OVnTB4unUa4YT3WHbAr Fj3KCl9lzLHAY6JPK8yGmUR0nTsJ4X3Oa91ITWHAxZ1GY4msauY0EKcez48lKadcJ6djxIZqwsYn DQgZhUycJATQUa/HREbI7gs01GTbagn6JYc2UkPnEEih4bwVWG1lXqMUs3jORA8L04bAg23QDFda mIplPxHzmiFDrZmorwbuSckKTNI66I4yoPiK/W5GL2WdW06s4XFwrO+bINn6EJdeBqPYTG8uOv3D +Bjs4GUyT60Eva5iJF88xIwVof10VKSSspw5a30qBAa8scYRNPvYmxW7SEIbGJuXXkyC6VeWgUEd 7VZFvIOBsH7qWVuNzn1hdZkYnTB889uzVNn5WNnOF29uX0cb01G49SZPfs1xJK3dumjRCLkQYKDZ Nv6xqIEfhiwUssPkxhEy2HA0rqC5YaYYhWiZ1QHRnJjASgArw6sfhECQAURCpCHTbxzCPm3YxxVl rRZH6k6jCUeuRG2NHMT4d4epOU0d2ut7rkLUVVJc4LMLlGJR/YJmmfScDuxRDdouNQa4ZsyYOAXA T4D8YBpkgJAbIgcBvHKcyNqgepJWeZRJwAg0efBI2x64yQg8Bw5xYkJ58UQ2Y/S5exKaKZjraMlV mhWRSKE43DK9+pkhihesTRGJ8Bw/6jrZGh0V+GRITIxCKNFp0a2SVSeSIIMDANKLRyMDw+xXF9kk w1wWILlBciOL3eMx44rZbxZk0DxFWXFZX7ZTp7WqOMz3e8IG20wGPCxYDfF5pcScW5uwDokVD51K vjcKDL16qERWqseoVkTvxSIIUC0YcEB7M3yoGDulsoUFgz2qTQSgsSYMbLu/C8NwkwSKQqEgKPDM r8c+i+01DGImmg/gKcoxjSSek7PLRjWM1Vsyq8uI7jbC0KALdSF5rhQZC4p3ljS8bWnOzPE6qCRO Y4pHLgbIWg3qW/YLejBQ6PIrbL2MX54FVYyDnUsw5sHHwE5SLNvOESskiR6N/FJiObnx5+dvp/xd yRThQkFFGX9s --===============0993354925==--