1. 04 Aug, 2008 4 commits
  2. 01 Aug, 2008 3 commits
  3. 30 Jul, 2008 1 commit
  4. 24 Jul, 2008 6 commits
  5. 23 Jul, 2008 1 commit
    • Sven Sandberg's avatar
      BUG#37717: rpl.rpl_stm_until 'stmt' fails sporadically on pushbuild · b4c8a498
      Sven Sandberg authored
      Problem: After START SLAVE, the Slave_IO_Status column of
      SHOW SLAVE STATUS goes from No to Yes asynchronously. That
      caused sporadic failures on pushbuild in rpl_stm_until since
      the test contains SHOW SLAVE STATUS right after START SLAVE.
      Fix: Wait until Slave_IO_Status becomes Yes after each
      START SLAVE.
      
      mysql-test/include/wait_for_slave_io_to_start.inc:
        Macro that waits until the Slave_IO_Running field of
        SHOW SLAVE STATUS becomes Yes.
      mysql-test/suite/rpl/r/rpl_stm_until.result:
        updated result file
      mysql-test/suite/rpl/t/rpl_stm_until.test:
         - Added wait_for_slave_io_to_start after each start slave.
         - Removed unused initialization of test variable $VERSION
         - Added comments.
      b4c8a498
  6. 22 Jul, 2008 1 commit
  7. 16 Jul, 2008 3 commits
    • Sven Sandberg's avatar
      automerge. · 142f2743
      Sven Sandberg authored
      142f2743
    • Sven Sandberg's avatar
      BUG#38127: main.mysqlbinlog_base64 fails sporadically on pushbuild · 55702926
      Sven Sandberg authored
      Problem: mysqlbinlog_base64 fails because the binlog contains
      traces from previous test cases.
      Fix: Make have_log_bin reset the master's binlog.
      
      
      mysql-test/include/have_log_bin.inc:
        Made have_log_bin reset the master logs, so that no traces of
        earlier test cases are left.
      mysql-test/t/mysqlbinlog_base64.test:
        Removed debug info from previous push to this test.
      55702926
    • Sven Sandberg's avatar
      BUG#37733: rpl.rpl_flushlog_loop 'row' fails sporadically on pushbuild · 6a0d9e6e
      Sven Sandberg authored
      Post-post-push fix. The result file for rpl_rbr_to_sbr needs to be 
      updated. While I was there, made rpl_rbr_to_sbr clean up after itself
      by reverting @@binlog_format to the value it had before the test
      started.
      
      
      mysql-test/suite/rpl/r/rpl_rbr_to_sbr.result:
        Updated result file
      mysql-test/suite/rpl/t/rpl_rbr_to_sbr.test:
        Made the test clean up after itself by reverting @@binlog_format
        to its original value.
      6a0d9e6e
  8. 15 Jul, 2008 2 commits
  9. 14 Jul, 2008 3 commits
  10. 10 Jul, 2008 2 commits
    • Sven Sandberg's avatar
      test case rpl.rpl000018 does not exist but has option files. · b55eb29e
      Sven Sandberg authored
      removing the option files
      
      mysql-test/suite/rpl/t/rpl000018-master.opt:
        removed unused file
      mysql-test/suite/rpl/t/rpl000018-slave.opt:
        removed unused file
      b55eb29e
    • Sven Sandberg's avatar
      BUG#37975: wait_for_slave_* should increase the timeout · 9d4ee0bf
      Sven Sandberg authored
      Problem 1: tests often fail in pushbuild with a timeout when waiting
      for the slave to start/stop/receive error.
      Fix 1: Updated the wait_for_slave_* macros in the following way:
      - The timeout is increased by a factor ten
      - Refactored the macros so that wait_for_slave_param does the work for
      the other macros.
      Problem 2: Tests are often incorrectly written, lacking a
      source include/wait_for_slave_to_[start|stop].inc.
      Fix 2: Improved the chance to get it right by adding
      include/start_slave.inc and include/stop_slave.inc, and updated tests
      to use these.
      Problem 3: The the built-in test language command
      wait_for_slave_to_stop is a misnomer (does not wait for the slave io
      thread) and does not give as much debug info in case of failure as
      the otherwise equivalent macro
      source include/wait_for_slave_sql_to_stop.inc
      Fix 3: Replaced all calls to the built-in command by a call to the
      macro.
      Problem 4: Some, but not all, of the wait_for_slave_* macros had an
      implicit connection slave. This made some tests confusing to read,
      and made it more difficult to use the macro in circular replication
      scenarios, where the connection named master needs to wait.
      Fix 4: Removed the implicit connection slave from all
      wait_for_slave_* macros, and updated tests to use an explicit
      connection slave where necessary.
      Problem 5: The macros wait_slave_status.inc and wait_show_pattern.inc
      were unused. Moreover, using them is difficult and error-prone.
      Fix 5: remove these macros.
      Problem 6: log_bin_trust_function_creators_basic failed when running
      tests because it assumed @@global.log_bin_trust_function_creators=1,
      and some tests modified this variable without resetting it to its
      original value.
      Fix 6: All tests that use this variable have been updated so that
      they reset the value at end of test.
      
      
      mysql-test/extra/rpl_tests/rpl_extraMaster_Col.test:
        Replaced wait_for_slave_to_stop by include/wait_for_slave_sql_to_stop.inc
      mysql-test/extra/rpl_tests/rpl_extraSlave_Col.test:
        Replaced wait_for_slave_to_stop by include/wait_for_slave_sql_to_stop.inc
        Added connection slave since includ/wait_for_slave_sql_to_stop.inc
        does not do that anymore.
      mysql-test/extra/rpl_tests/rpl_log.test:
        Replaced start slave+wait_slave_status by start_slave.inc
      mysql-test/include/reset_master_and_slave.inc:
        replaced start/stop slave by start_slave.inc/stop_slave.inc
      mysql-test/include/sync_slave_io_with_master.inc:
        Improved comments and error message.
      mysql-test/include/wait_for_slave_io_to_stop.inc:
        Refactored to use wait_for_slave_param.inc.
        Removed connection slave.
      mysql-test/include/wait_for_slave_param.inc:
        - Improved usage instructions
        - Added more debug info in case of timeout
        - Added parameters $slave_param_comparison, $slave_timeout,
        $slave_keep_connection, $slave_error_message
      mysql-test/include/wait_for_slave_sql_error.inc:
        Refactored to use wait_for_slave_param.inc.
        Removed connection slave.
      mysql-test/include/wait_for_slave_sql_to_start.inc:
        Refactored to use wait_for_slave_param.inc.
        Removed connection slave.
      mysql-test/include/wait_for_slave_sql_to_stop.inc:
        Refactored to use wait_for_slave_param.inc.
        Removed connection slave.
      mysql-test/include/wait_for_slave_to_start.inc:
        Refactored to use wait_for_slave_param.inc.
        Removed connection slave.
      mysql-test/include/wait_for_slave_to_stop.inc:
        Refactored to use wait_for_slave_param.inc.
        Removed connection slave.
      mysql-test/include/wait_show_pattern.inc:
        Removed unused (and error-prone) file
      mysql-test/include/wait_slave_status.inc:
        Removed unused (and error-prone) file
      mysql-test/suite/binlog/t/binlog_auto_increment_bug33029.test:
        Renamed $keep_connection to $slave_keep_connection.
      mysql-test/suite/rpl/t/rpl_bug26395.test:
        Replace stop slave by stop_slave.inc
      mysql-test/suite/rpl/t/rpl_circular_for_4_hosts.test:
        Replace start/stop slave by start_slave.inc/stop_slave.inc.
        Replace wait_for_slave_param by wait_for_slave_sql_to_stop.inc.
      mysql-test/suite/rpl/t/rpl_dual_pos_advance.test:
        Renamed $keep_connection to $slave_keep_connection.
      mysql-test/suite/rpl/t/rpl_flushlog_loop.test:
        Replace wait_slave_status by start_slave.inc
      mysql-test/suite/rpl/t/rpl_idempotency.test:
        Added connection slave since wait_for_slave_sql_to_stop.inc does not
        do that any more.
      mysql-test/suite/rpl/t/rpl_incident.test:
        Replaced wait_for_slave_to_stop by wait_for_slave_sql_to_stop.inc
      mysql-test/suite/rpl/t/rpl_init_slave.test:
        Replaced start/stop slave by start_slave.inc/stop_slave.inc.
        Replaced save_master_pos;connection slave;sync_with_master by
        sync_slave_with_master.
      mysql-test/suite/rpl/t/rpl_log_pos.test:
        Replaced start/stop slave by start_slave.inc/stop_slave.inc.
        Replaced wait_for_slave_param by other wait_for_slave_* macros.
      mysql-test/suite/rpl/t/rpl_packet.test:
        Replaced start/stop slave by start_slave.inc/stop_slave.inc.
      mysql-test/suite/rpl/t/rpl_row_inexist_tbl.test:
        Replaced start/stop slave by start_slave.inc/stop_slave.inc.
      mysql-test/suite/rpl/t/rpl_row_stop_middle_update.test:
        Replaced start/stop slave by start_slave.inc/stop_slave.inc.
      mysql-test/suite/rpl/t/rpl_row_until.test:
        Replaced start/stop slave by start_slave.inc/stop_slave.inc.
        Replaced save_master_pos;connection slave;sync_with_master by
        sync_slave_with_master.
      mysql-test/suite/rpl/t/rpl_server_id1.test:
        Replaced start/stop slave by start_slave.inc/stop_slave.inc.
      mysql-test/suite/rpl/t/rpl_slave_grp_exec.test:
        Replaced start/stop slave by start_slave.inc/stop_slave.inc.
      mysql-test/suite/rpl/t/rpl_slave_skip.test:
        Replaced start/stop slave by start_slave.inc/stop_slave.inc.
      mysql-test/suite/rpl/t/rpl_slave_status.test:
        Replaced start/stop slave by start_slave.inc/stop_slave.inc.
      mysql-test/suite/rpl/t/rpl_sp.test:
        Restore @@global.log_bin_trust_function_creators at end of test.
      mysql-test/suite/rpl/t/rpl_sp_effects.test:
        Restore @@global.log_bin_trust_function_creators at end of test.
      mysql-test/suite/rpl/t/rpl_stm_until.test:
        Replaced start/stop slave by start_slave.inc/stop_slave.inc.
        Replaced save_master_pos;connection slave;sync_with_master by
        sync_slave_with_master.
      mysql-test/suite/rpl_ndb/t/rpl_ndb_basic.test:
        Replaced start slave by start_slave.inc.
        Added explicit connection slave since wait_for_slave_sql_to_stop.inc
        does not do that anymore.
      mysql-test/t/disabled.def:
        Disabled failing test.
      mysql-test/t/func_time.test:
        Restore @@global.log_bin_trust_function_creators at end of test.
      mysql-test/t/grant.test:
        Restore @@global.log_bin_trust_function_creators at end of test.
      mysql-test/t/grant2.test:
        Restore @@global.log_bin_trust_function_creators at end of test.
      mysql-test/t/innodb_notembedded.test:
        Restore @@global.log_bin_trust_function_creators at end of test.
      mysql-test/t/log_bin_trust_function_creators_func.test:
        Restore @@global.log_bin_trust_function_creators at end of test.
        Clean up at end of test by dropping the created user.
      mysql-test/t/query_cache.test:
        Restore @@global.log_bin_trust_function_creators at end of test.
      mysql-test/t/query_cache_notembedded.test:
        Restore @@global.log_bin_trust_function_creators at end of test.
      mysql-test/t/rpl_init_slave_func.test:
        Replaced start/stop slave by start_slave.inc/stop_slave.inc.
      mysql-test/t/timezone2.test:
        Restore @@global.log_bin_trust_function_creators at end of test.
      9d4ee0bf
  11. 09 Jul, 2008 1 commit
    • Mats Kindahl's avatar
      Ensuring that master and slave both issue a RESET MASTER and RESET SLAVE · 73948a84
      Mats Kindahl authored
      when resetting replication tests.  If not, circular replication setups
      will leave cruft in the slaves binary log.
      
      mysql-test/include/master-slave-reset.inc:
        Adding RESET MASTER on slave and RESET SLAVE on master. In order to avoid
        having to re-generate all the replication test result files, I disable the
        query log for the added statements.
      mysql-test/suite/rpl/t/rpl_flushlog_loop.test:
        Adding code to clean up after test. Disabling query log for the cleanup code.
      73948a84
  12. 08 Jul, 2008 5 commits
    • Mats Kindahl's avatar
      Patch to remove extreneous printout. · 3ae36a1e
      Mats Kindahl authored
      mysql-test/include/wait_for_slave_sql_to_stop.inc:
        Removing extreneous printout.
      3ae36a1e
    • Mats Kindahl's avatar
      Manual merge with mysql-5.1-rpl · d4c0cf10
      Mats Kindahl authored
      d4c0cf10
    • Mats Kindahl's avatar
      Bug #37939 rpl_row_stop_middle_update fails sporadically on pushbuild · eabc3f75
      Mats Kindahl authored
      Bug #37940    rpl_dual_pos_advance fails sporadically on pushbuild,fail wait_for_slave_to_stop
      Bug #37941    rpl_flushlog_loop fails sporadically on pushbuild
        
      Several tests fail when waiting for the slave to stop in what
      appears to be timeouts caused by a timeout value set to low. 
      This causes false failures when the servers are loaded.
        
      In order to try to avoid false negatives, we increase the
      timeout 10 times and also print some more information in the
      event that the slave fails to stop when expected to.
        
      We add a printout of the current processes running to be able
      to see if any process have been executing for an unexpectedly
      long time, and also print the binlog events at the position
      indicated by SHOW SLAVE STATUS.
      
      
      mysql-test/include/wait_for_slave_sql_to_stop.inc:
        - Increasing default timeout 10 times and allowing it to be configurable.
        - Adding printout of process list on failure.
        - Adding printout of binlog events on master that has not yet been applied,
          unless $keep_connection is true.
      eabc3f75
    • Sven Sandberg's avatar
      merged in disabled test cases · 8dd90aff
      Sven Sandberg authored
      8dd90aff
    • Sven Sandberg's avatar
      BUG#37962: *_func tests containing sleeps/race conditions · ff20ea67
      Sven Sandberg authored
      This is not a fix, it just disables the erroneous test cases.
      
      
      mysql-test/t/disabled.def:
        Disabled a number of new tests that contain sleeps and that
        have not been checked for race conditions. At least some of
        them contain race conditions.
      ff20ea67
  13. 07 Jul, 2008 6 commits
    • Sven Sandberg's avatar
      merged fix for bug#37373 into 5.1-rpl · 58bfe41f
      Sven Sandberg authored
      58bfe41f
    • Sven Sandberg's avatar
      BUG#37933: Test "rpl_insert" fails - timing problem in replication test ? · 0b912ed1
      Sven Sandberg authored
      Problem: the test syncs slave by a 'wait_condition' waiting until
      table t1 has 5000 rows. However, there is no guarantee that t1
      makes it to the slave before the wait_condition.
      Fix: sync_slave_with_master just after t1 was created.
      
      
      mysql-test/suite/rpl/t/rpl_insert.test:
        Added sync_slave_with_master to ensure that table t1 is on
        slave before the slave executes wait_condition.
      0b912ed1
    • Sven Sandberg's avatar
      merged fixes for bug#37858 · 0549cfaf
      Sven Sandberg authored
      0549cfaf
    • Sven Sandberg's avatar
      merge with local changes for bug#37906 · acc7f512
      Sven Sandberg authored
      acc7f512
    • Sven Sandberg's avatar
      Post-merge fixes. · 8f83fc20
      Sven Sandberg authored
      The file tree in mtr's vardir has changed so an old
      hard-coded path in mysql-test/t/subselect.test didn't
      work.
      Fix: update the paths in the test.
      
      
      mysql-test/r/subselect.result:
        Updated result file.
      mysql-test/t/subselect.test:
        Problem: The file tree in mtr's vardir has changed
        so an old hard-coded path didn't work.
        Fix: update the paths in the test.
      8f83fc20
    • Sven Sandberg's avatar
      rpl_row_inexist_tbl gave a merge conflict because the binlog · 8d6cce7a
      Sven Sandberg authored
      positions changed. Fixed by removing binlog positions from
      output, and also:
       - removed code not used to verify the tested property
       - added comments
      
      
      mysql-test/suite/rpl/r/rpl_row_inexist_tbl.result:
        Updated result file.
      mysql-test/suite/rpl/t/rpl_row_inexist_tbl-slave.opt:
        Removed option file: it's not needed any more.
      mysql-test/suite/rpl/t/rpl_row_inexist_tbl.test:
        Improved the test in the following ways:
         - The table t2 was not used to verify the property to test,
        so t2 has been removed.
         - Now printing only the relevant column from SHOW SLAVE STATUS
         - Added comments.
      8d6cce7a
  14. 06 Jul, 2008 2 commits