1. 02 Feb, 2011 4 commits
    • Marko Mäkelä's avatar
      Bug #55284 diagnostics: Introduce UNIV_BLOB_LIGHT_DEBUG, enabled by UNIV_DEBUG · 5adf2313
      Marko Mäkelä authored
      btr_rec_get_field_ref_offs(), btr_rec_get_field_ref(): New functions.
      Get the pointer to an externally stored field.
      
      btr_cur_set_ownership_of_extern_field(): Assert that the BLOB has not
      already been disowned.
      
      btr_store_big_rec_extern_fields(): Rename to
      btr_store_big_rec_extern_fields_func() and add the debug parameter
      update_in_place. All pointers to externally stored columns in the
      record must either be zero or they must be pointers to inherited
      columns, owned by this record or an earlier record version. For any
      BLOB that is stored, the BLOB pointer must previously have been
      zero. When the function completes, all BLOB pointers must be nonzero
      and owned by the record.
      
      rb://549 approved by Jimmy Yang
      5adf2313
    • Marko Mäkelä's avatar
      Non-functional changes (cleanup) made while narrowing down Bug #55284: · 7c45708f
      Marko Mäkelä authored
      row_purge(): Change the return type to void. (The return value always
      was DB_SUCCESS.) Remove some local variables.
      
      row_undo_mod_remove_clust_low(): Remove some local variables.
      
      rb://547 approved by Jimmy Yang
      7c45708f
    • Marko Mäkelä's avatar
      Bug #55284 diagnostics: When UNIV_DEBUG, do not tolerate garbage in · f2eacde4
      Marko Mäkelä authored
      Antelope files in btr_check_blob_fil_page_type(). Unfortunately, we
      must keep the check in production builds, because InnoDB wrote
      uninitialized garbage to FIL_PAGE_TYPE until fairly recently (5.1.x).
      
      rb://546 approved by Jimmy Yang
      f2eacde4
    • Marko Mäkelä's avatar
      Bug #55284 diagnostics: Enable UNIV_DEBUG_FILE_ACCESSES by UNIV_DEBUG · 1f796c2b
      Marko Mäkelä authored
      It was the enabling of UNIV_DEBUG_FILE_ACCESSES that caught Bug #55284
      in the first place. This is a very light piece of of debug code, and
      there really is no reason why it is not enabled in all debug builds.
      
      rb://551 approved by Jimmy Yang
      1f796c2b
  2. 31 Jan, 2011 1 commit
    • Marko Mäkelä's avatar
      Bug#59230 assert 0 row_upd_changes_ord_field_binary() in post-crash · e952ee11
      Marko Mäkelä authored
      trx rollback or purge
      
      This patch does not relax the failing debug assertion during purge.
      That will be revisited once we have managed to repeat the assertion failure.
      
      row_upd_changes_ord_field_binary_func(): Renamed from
      row_upd_changes_ord_field_binary(). Add the parameter que_thr_t* in
      UNIV_DEBUG builds. When the off-page column cannot be retrieved,
      assert that the current transaction is a recovered one and that it is
      the one that is currently being rolled back.
      
      row_upd_changes_ord_field_binary(): A wrapper macro for
      row_upd_changes_ord_field_binary_func() that discards the que_thr_t*
      parameter unless UNIV_DEBUG is defined.
      
      row_purge_upd_exist_or_extern_func(): Renamed from
      row_purge_upd_exist_or_extern(). Add the parameter que_thr_t* in
      UNIV_DEBUG builds.
      
      row_purge_upd_exist_or_extern(): A wrapper macro for
      row_purge_upd_exist_or_extern_func() that discards the que_thr_t*
      parameter unless UNIV_DEBUG is defined.
      
      Make trx_roll_crash_recv_trx const. If there were a 'do not
      dereference' attribute, it would be appropriate as well.
      
      rb://588 approved by Jimmy Yang
      e952ee11
  3. 30 Jan, 2011 2 commits
  4. 29 Jan, 2011 1 commit
    • John H. Embretsen's avatar
      Fix for Bug#56817 - mysqlhotcopy tests fail when DBI and DBD-mysql perl modules are not found · 26528be7
      John H. Embretsen authored
      Third updated patch - this version also includes copyright notice in added Perl script.
      This patch implements a check for such modules at runtime. If modules are not found or unable to load, the test is skipped with 
      the following message:
                  
                  [ skipped ]  Test needs Perl modules DBI and DBD::mysql
                  
      Checks are done via a helper Perl script which looks for the module in a runtime environment that is as similar to that of the 
      mysqlhotcopy script as possible (thus not intended for Windows environments at this time).
      The helper script tells mysql-test about the result by writing information to a temporary file that is later read by mysql-test.
      See comments in added files (have_dbi_dbd-mysql.inc and checkDBI_DBD-mysql.pl) for details.
      The patch also removes the mysqlhotcopy tests from the list of disabled tests.
      26528be7
  5. 28 Jan, 2011 2 commits
  6. 27 Jan, 2011 6 commits
  7. 26 Jan, 2011 8 commits
  8. 25 Jan, 2011 6 commits
  9. 24 Jan, 2011 2 commits
  10. 21 Jan, 2011 1 commit
    • Bjorn Munch's avatar
      Bug #59063 rpl_migration_crash_safe fails on Windows · d43a3b38
      Bjorn Munch authored
      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
      d43a3b38
  11. 20 Jan, 2011 1 commit
  12. 19 Jan, 2011 4 commits
  13. 18 Jan, 2011 2 commits
    • Mattias Jonsson's avatar
      Bug#59418: parts suite have several failures with --embedded-server · d33fbe44
      Mattias Jonsson authored
      The test were using external tools not available for embedded.
      
      Fixed by rewriting the test to not rely on external tools like the mysql-client
      
      Also fixed some non portable --exec commands and replaced #p# to #P# to pass
      on windows.
      d33fbe44
    • Libing Song's avatar
      Bug#58546 test rpl_packet timeout failure sporadically on PB · 77bc81b8
      Libing Song authored
                  
      rpl_packet got a timeout failure sporadically on PB when stopping
      slave. The real reason of this bug is that STOP SLAVE stopped
      IO thread first and then stopped SQL thread. It was
      possible that IO thread stopped after replicating part of a
      transaction which SQL thread was executing. SQL thread would
      be hung if the transaction could not be rolled back safely.
                  
      After this patch, STOP SLAVE will stop SQL thread first and then stop IO
      thread, which guarantees that IO thread will fetch the reset of the
      events of the transaction that SQL thread is executing, so that SQL
      thread can finish the transaction if it cannot be rolled back safely.
                  
      Added below auxiliary files to make the test code neater.
      restart_slave_sql.inc
      rpl_connection_master.inc
      rpl_connection_slave.inc
      rpl_connection_slave1.inc
      77bc81b8