1. 15 Dec, 2009 1 commit
  2. 03 Dec, 2009 1 commit
    • unknown's avatar
      WL#5142 FLUSH LOGS should take optional arguments for which log(s) to flush · ac647f5a
      unknown authored
      Support for flushing individual logs, so that the user can
      selectively flush a subset of the server logs.
      
      Flush of individual logs is done according to the 
      following syntax:
      
        FLUSH <log_category> LOGS;
      
      The syntax is extended so that the user is able to flush a
      subset of logs:
      
        FLUSH [log_category LOGS,];
      
      where log_category is one of:
        SLOW
        ERROR
        BINARY
        ENGINE
        GENERAL
        RELAY.
      
      
      mysql-test/suite/rpl/r/rpl_flush_logs.result:
        Test result for WL#5142.
      mysql-test/suite/rpl/t/rpl_flush_logs.test:
        Added the test file to verify if the 'flush individual log' 
        statement works fine.
      sql/log.cc:
        Added the two functions to flush slow and general log.
      sql/sql_parse.cc:
        Added code to flush specified logs against the option.
      sql/sql_yacc.yy:
        Added code to parse the 'flush * log' statement syntax and 
        set its option to Lex->type.
      ac647f5a
  3. 01 Dec, 2009 1 commit
  4. 30 Nov, 2009 2 commits
  5. 28 Nov, 2009 1 commit
  6. 27 Nov, 2009 1 commit
  7. 26 Nov, 2009 1 commit
  8. 24 Nov, 2009 1 commit
    • Luis Soares's avatar
      BUG#42150: binlog_start_comment.test failed: Error writing file 'UNOPENED' · 76623d35
      Luis Soares authored
      NOTE: backporting BUG#42150 into next-mr
            Includes latest Andrei's patch (see [2 Feb 18:40] Bugs System)
            and merge.test post-push fix (see [3 Feb 18:04] Bugs System)
      
      The reason of the bug appeared to be overreacting on absense of a
      binlog file although the file name had been presented in in the master
      binlog index file.
      By convention, there should have been only a warning printed and the rest of
      `reset master' logics completed.  This did not happen on windows
      due to incorrect value of my_errno returned from nt_share_delete().
            
      Fixed with correcting my_errno assignment in nt_share_delete() to be ENOENT in 
      he event of no binlog file. Some minor refactoring has been made.
      76623d35
  9. 22 Nov, 2009 1 commit
    • Luis Soares's avatar
      BUG#40611: MySQL cannot make a binary log after sequential number · 2fe9fb2b
      Luis Soares authored
      beyond unsigned long.
      BUG#44779: binlog.binlog_max_extension may be causing failure on 
      next test in PB
                  
      NOTE1: this is the backport to next-mr.
      NOTE2: already includes patch for BUG#44779.
                  
      Binlog file extensions would turn into negative numbers once the
      variable used to hold the value reached maximum for signed
      long. Consequently, incrementing value to the next (negative) number
      would lead to .000000 extension, causing the server to fail.
                              
      This patch addresses this issue by not allowing negative extensions
      and by returning an error on find_uniq_filename, when the limit is
      reached. Additionally, warnings are printed to the error log when the
      limit is approaching. FLUSH LOGS will also report warnings to the
      user, if the extension number has reached the limit. The limit has been
      set to 0x7FFFFFFF as the maximum.
      
      mysql-test/suite/binlog/t/binlog_max_extension.test:
        Test case added that checks the maximum available number for
        binlog extensions.
      sql/log.cc:
        Changes to find_uniq_filename and test_if_number.
      sql/log.h:
        Added macros with values for MAX_LOG_UNIQUE_FN_EXT and
        LOG_WARN_UNIQUE_FN_EXT_LEFT, as suggested in review.
      2fe9fb2b
  10. 20 Nov, 2009 1 commit
    • Andrei Elkin's avatar
      Bug #48463 backporting from 6.0-rpl to celosia a set of bugs · 976e1559
      Andrei Elkin authored
      The mentioned on the bug report set of bugs fixes have not be pushed to the main trees.
      
      Fixed with extracting commits done to 6.0-rpl tree and applying them to the main 5.1.
      Notes.
      1. part of changes - the mtr's specific - were packported to the main 5.0 tree for mtr v1
         as http://lists.mysql.com/commits/46562
         However, there is no that fix anymore in the mtr v2. (This fact was mailed to mtr maintaining
         people).
      
      2. Bug@36929  crash in kill_zombie_dump_threads-> THD::awake() with replication tests
         is not backported because the base code of the patch is libevent and that was removed
         from the main trees due to its instability.
      
      client/mysqlbinlog.cc:
        fixes for BUG#35546
      mysql-test/suite/rpl/r/rpl_bug41902.result:
        the new tests result file is added.
      mysql-test/suite/rpl/t/rpl_bug41902-slave.opt:
        conf file for bug41902 testing is added.
      mysql-test/suite/rpl/t/rpl_bug41902.test:
        regression tests for Bug #41902 is added.
      sql/log.cc:
        collection of changes due to Bug #48463.
      sql/log.h:
        collection of changes due to Bug #48463.
      sql/rpl_rli.h:
        collection of changes due to Bug #48463.
      sql/slave.cc:
        collection of changes due to Bug #48463.
      sql/sql_repl.cc:
        collection of changes due to Bug #48463.
      976e1559
  11. 16 Nov, 2009 1 commit
    • Luis Soares's avatar
      BUG#48048: Deprecated constructs need removal in Betony · 625ddcd5
      Luis Soares authored
      Post-push fix: Removed MTRv1 arguments according to the
      original patch. Although there is a version check, the patch
      was pushed to a 5.1 GA staging tree, while the version check 
      considers version 5.2. This makes the deprecated parameters 
      to be used, despite the fact that they are not valid anymore.
      
      Part of MTRv1 is currently used in RQG semisync test, and this
      was causing the test to fail on slave startup.
      
      It should be safe to uncomment when merging up to celosia.
      625ddcd5
  12. 13 Nov, 2009 3 commits
    • Luis Soares's avatar
      BUG#48048: Deprecated constructs need removal in Betony · bcb25587
      Luis Soares authored
      Post-push fix: Reverting change in Makefile.am which was
      causing windows not to build client/.
      bcb25587
    • Luis Soares's avatar
      manual merge: mysql-5.1-rep+2 (bug tree) --> mysql-5.1-rep+2 (latest) · d8ca6b9d
      Luis Soares authored
      CONFLICTS
      =========
      
      Text conflict in sql/sql_yacc.yy
      1 conflicts encountered. 
      d8ca6b9d
    • unknown's avatar
      Backport Bug #45827 Stmt using two autoinc values does not produce unsafe warning · 0d46e588
      unknown authored
            
      One statement that have more than one different tables to update with 
      autoinc columns just was marked as unsafe in mixed mode, so the unsafe 
      warning can't be produced in statement mode.
            
      To fix the problem, mark the statement as unsafe in statement mode too.
      
      
      mysql-test/extra/rpl_tests/rpl_insert_id.test:
        The test case is updated due to the patch of bug#45827.
      mysql-test/suite/binlog/r/binlog_stm_mix_innodb_myisam.result:
        The test result is updated due to the patch of bug#45827.
      mysql-test/suite/binlog/r/binlog_unsafe.result:
        Test result for bug#45827.
      mysql-test/suite/binlog/t/binlog_unsafe.test:
        Added test to verify if stmt that have more than one
        different tables to update with autoinc columns will 
        produce unsafe warning
      mysql-test/suite/rpl/r/rpl_stm_auto_increment_bug33029.result:
        The test result is updated due to the patch of bug#45827.
      mysql-test/suite/rpl/t/rpl_trigger.test:
        The test case is updated due to the patch of bug#45827.
      mysql-test/suite/rpl/t/rpl_variables_stm.test:
        The test case is updated due to the patch of bug#45827.
      sql/sql_base.cc:
        Reomved the 'set_current_stmt_binlog_row_based_if_mixed' function 
        for producing unsafe warnings by executing 'decide_logging_format' 
        function later in statement mode
      0d46e588
  13. 12 Nov, 2009 1 commit
  14. 11 Nov, 2009 1 commit
  15. 06 Nov, 2009 1 commit
  16. 04 Nov, 2009 6 commits
  17. 03 Nov, 2009 16 commits
    • Davi Arnaut's avatar
      Automerge. · cca9eeb6
      Davi Arnaut authored
      cca9eeb6
    • Davi Arnaut's avatar
      69859d8d
    • Konstantin Osipov's avatar
      A fix and a test case for · cb0cca86
      Konstantin Osipov authored
      Bug#41756 "Strange error messages about locks from InnoDB".
            
      In JT_EQ_REF (join_read_key()) access method, 
      don't try to unlock rows in the handler, unless certain that 
      a) they were locked
      b) they are not used.
      
      Unlocking of rows is done by the logic of the nested join loop,
      and is unaware of the possible caching that the access method may
      have. This could lead to double unlocking, when a row
      was unlocked first after reading into the cache, and then 
      when taken from cache, as well as to unlocking of rows which
      were actually used (but taken from cache).
            
      Delegate part of the unlocking logic to the access method,
      and in JT_EQ_REF count how many times a record was actually 
      used in the join. Unlock it only if it's usage count is 0.
      
      Implemented review comments.
      
      mysql-test/r/innodb_lock_wait_timeout_1.result:
        Update results (Bug41756).
      mysql-test/t/innodb_lock_wait_timeout_1.test:
        Add a test case (Bug#41756).
      sql/item_subselect.cc:
        Complete struct READ_RECORD initialization with a new
        member to unlock records.
      sql/records.cc:
        Extend READ_RECORD API with a method to unlock read records.
      sql/sql_select.cc:
        In JT_EQ_REF (join_read_key()) access method, 
        don't try to unlock rows in the handler, unless certain that 
        a) they were locked
        b) they are not used.
      sql/sql_select.h:
        Add members to TABLE_REF to count TABLE_REF buffer usage count.
      sql/structs.h:
        Update declarations.
      cb0cca86
    • Magnus Blåudd's avatar
      Merge bug#47867 to 5.1-bugteam · 7b7f0149
      Magnus Blåudd authored
      7b7f0149
    • Konstantin Osipov's avatar
      A fix and a test case for · 06c9d62a
      Konstantin Osipov authored
      Bug#41756 "Strange error messages about locks from InnoDB".
      
      In JT_EQ_REF (join_read_key()) access method,
      don't try to unlock rows in the handler, unless certain that
      a) they were locked
      b) they are not used.
      
      Unlocking of rows is done by the logic of the nested join loop,
      and is unaware of the possible caching that the access method may
      have. This could lead to double unlocking, when a row
      was unlocked first after reading into the cache, and then
      when taken from cache, as well as to unlocking of rows which
      were actually used (but taken from cache).
      
      Delegate part of the unlocking logic to the access method,
      and in JT_EQ_REF count how many times a record was actually
      used in the join. Unlock it only if it's usage count is 0.
      
      Implemented review comments.
      
      
      mysql-test/r/bug41756.result:
        Add result file (Bug#41756)
      mysql-test/t/bug41756-master.opt:
        Use --innodb-locks-unsafe-for-binlog, as in 5.0 just
        using read_committed isolation is not sufficient to 
        reproduce the bug.
      mysql-test/t/bug41756.test:
        Add a test file (Bug#41756)
      sql/item_subselect.cc:
        Complete struct READ_RECORD initialization with a new
        member to unlock records.
      sql/records.cc:
        Extend READ_RECORD API with a method to unlock read records.
      sql/sql_select.cc:
        In JT_EQ_REF (join_read_key()) access method,
        don't try to unlock rows in the handler, unless certain that
        a) they were locked
        b) they are not used.
      sql/sql_select.h:
        Add members to TABLE_REF to count TABLE_REF buffer usage count.
      sql/structs.h:
        Update declarations.
      06c9d62a
    • Kristofer Pettersson's avatar
      automerge · cafe3c7f
      Kristofer Pettersson authored
      cafe3c7f
    • Kristofer Pettersson's avatar
    • Sergey Vojtovich's avatar
      Merge of innodb-zip-ss6129 snapshot. · 0212e736
      Sergey Vojtovich authored
      0212e736
    • Sergey Vojtovich's avatar
      Clean-up after applying innodb-zip-ss6129 snapshot: · 7c4cae75
      Sergey Vojtovich authored
      - re-enabled main.innodb_bug44369;
      - re-enabled main.innodb_bug47777;
      - re-enabled innodb.innodb_information_schema.
      7c4cae75
    • Jorgen Loland's avatar
      Bug#48177 - SELECTs with NOT IN subqueries containing NULL · bec35067
      Jorgen Loland authored
                  values return too many records
      
      WHERE clauses with "outer_value_list NOT IN subselect" were
      handled incorrectly if the outer value list contained multiple 
      items where at least one of these could be NULL. The first 
      outer record with NULL value was handled correctly, but if a 
      second record with NULL value existed, the optimizer would 
      choose to reuse the result it got on the last execution of the 
      subselect. This is incorrect if the outer value list has 
      multiple items.
           
      The fix is to make Item_in_optimizer::val_int (in 
      item_cmpfunc.cc) reuse the result of the latest execution
      for NULL values only if all values in the outer_value_list 
      are NULL.
      
      
      mysql-test/r/subselect3.result:
        Added test for BUG#48177
      mysql-test/t/subselect3.test:
        Added test for BUG#48177
      sql/item_cmpfunc.cc:
        Make Item_in_optimizer::val_int (in item_cmpfunc.cc) reuse the result of the latest execution for NULL values only if all values in the outer_value_list are NULL.
      bec35067
    • Sergey Vojtovich's avatar
      Applying InnoDB plugin snashot · f24dd341
      Sergey Vojtovich authored
      Detailed revision comments:
      
      r6126 | vasil | 2009-10-30 10:36:07 +0200 (Fri, 30 Oct 2009) | 45 lines
      branches/zip: Merge r6112:6125 from branches/5.1:
      
      (skipping r6122 and r6123, Jimmy says these are already present and need
      not be merged):
      
        ------------------------------------------------------------------------
        r6122 | jyang | 2009-10-30 05:18:38 +0200 (Fri, 30 Oct 2009) | 7 lines
        Changed paths:
           M /branches/5.1/handler/ha_innodb.cc
           M /branches/5.1/mysql-test/innodb_bug44369.result
           M /branches/5.1/mysql-test/innodb_bug44369.test
           M /branches/5.1/mysql-test/innodb_bug46000.result
           M /branches/5.1/mysql-test/innodb_bug46000.test
        
        branches/5.1: Chnage WARN_LEVEL_ERROR to WARN_LEVEL_WARN
        for push_warning_printf() call in innodb.
        Fix Bug#47233: Innodb calls push_warning(MYSQL_ERROR::WARN_LEVEL_ERROR)
        
        rb://170 approved by Marko.
        
        
        ------------------------------------------------------------------------
        r6123 | jyang | 2009-10-30 05:43:06 +0200 (Fri, 30 Oct 2009) | 8 lines
        Changed paths:
           M /branches/5.1/os/os0proc.c
        
        branches/5.1: In os_mem_alloc_large(), if we fail to attach
        the shared memory, reset memory pointer ptr to NULL, and
        allocate memory from conventional pool. This is a port
        from branches/zip.
        Bug #48237 Error handling in os_mem_alloc_large appears to be incorrect
        rb://198  Approved by: Marko
        
        
        ------------------------------------------------------------------------
        r6125 | vasil | 2009-10-30 10:31:23 +0200 (Fri, 30 Oct 2009) | 4 lines
        Changed paths:
           M /branches/5.1/handler/ha_innodb.cc
        
        branches/5.1:
        
        White-space fixup.
        
        ------------------------------------------------------------------------
      f24dd341
    • Sergey Vojtovich's avatar
      Applying InnoDB plugin snashot · f73596ab
      Sergey Vojtovich authored
      Detailed revision comments:
      
      r6121 | sunny | 2009-10-30 01:42:11 +0200 (Fri, 30 Oct 2009) | 7 lines
      branches/zip: This test has been problematic for sometime now. The underlying
      bug is that the data dictionaries get out of sync. In the AUTOINC code we
      try and apply salve to the symptoms. In the past MySQL made some unrelated
      change and the dictionaries stopped getting out of sync and this test started
      to fail. Now, it seems they have reverted that changed and the test is
      passing again. I suspect this is not he last time that this test will change.
      
      r6124 | jyang | 2009-10-30 10:02:31 +0200 (Fri, 30 Oct 2009) | 5 lines
      branches/zip: Correct the bug number for -r6109 change
      from # 48273 to #48237
      f73596ab
    • Sergey Vojtovich's avatar
      Applying InnoDB plugin snashot · 676bf0b3
      Sergey Vojtovich authored
      Detailed revision comments:
      
      r6114 | vasil | 2009-10-29 18:43:51 +0200 (Thu, 29 Oct 2009) | 6 lines
      branches/zip:
      
      * Add ChangeLog entries for latest changes
      * Obey alphabetical order in the list of the files
      * White-space fixup
      676bf0b3
    • Sergey Vojtovich's avatar
      Applying InnoDB plugin snashot · 976696fe
      Sergey Vojtovich authored
      Detailed revision comments:
      
      r6113 | vasil | 2009-10-29 18:15:50 +0200 (Thu, 29 Oct 2009) | 93 lines
      branches/zip: Merge r5912:6112 from branches/5.1:
      
      (after this merge the innodb-autoinc test starts to fail, but
      I commit anyway because it would be easier to investigate the
      failure this way)
      
        ------------------------------------------------------------------------
        r5952 | calvin | 2009-09-22 19:45:07 +0300 (Tue, 22 Sep 2009) | 7 lines
        Changed paths:
           M /branches/5.1/handler/ha_innodb.cc
        
        branches/5.1: fix bug#42383: Can't create table 'test.bug39438'
        
        For embedded server, MySQL may pass in full path, which is
        currently disallowed. It is needed to relax the condition by
        accepting full paths in the embedded case.
        
        Approved by: Heikki (on IM)
        ------------------------------------------------------------------------
        r6032 | vasil | 2009-10-01 15:55:49 +0300 (Thu, 01 Oct 2009) | 8 lines
        Changed paths:
           M /branches/5.1/handler/ha_innodb.cc
        
        branches/5.1:
        
        Fix Bug#38996 Race condition in ANALYZE TABLE
        
        by serializing ANALYZE TABLE inside InnoDB.
        
        Approved by:	Heikki (rb://175)
        
        ------------------------------------------------------------------------
        r6045 | jyang | 2009-10-08 02:27:08 +0300 (Thu, 08 Oct 2009) | 7 lines
        Changed paths:
           M /branches/5.1/handler/ha_innodb.cc
           A /branches/5.1/mysql-test/innodb_bug47777.result
           A /branches/5.1/mysql-test/innodb_bug47777.test
        
        branches/5.1: Fix bug #47777. Treat the Geometry data same as
        Binary BLOB in ha_innobase::store_key_val_for_row(), since the
        Geometry data is stored as Binary BLOB in Innodb.
        
        Review: rb://180 approved by Marko Makela.
        
        
        ------------------------------------------------------------------------
        r6051 | sunny | 2009-10-12 07:05:00 +0300 (Mon, 12 Oct 2009) | 6 lines
        Changed paths:
           M /branches/5.1/handler/ha_innodb.cc
           M /branches/5.1/mysql-test/innodb-autoinc.result
           M /branches/5.1/mysql-test/innodb-autoinc.test
        
        branches/5.1: Ignore negative values supplied by the user when calculating the
        next value to store in dict_table_t. Setting autoincrement columns top negative
        values is undefined behavior and this change should bring the behavior of
        InnoDB closer to what users expect. Added several tests to check.
        rb://162
        
        ------------------------------------------------------------------------
        r6052 | sunny | 2009-10-12 07:09:56 +0300 (Mon, 12 Oct 2009) | 4 lines
        Changed paths:
           M /branches/5.1/handler/ha_innodb.cc
           M /branches/5.1/mysql-test/innodb-autoinc.result
           M /branches/5.1/mysql-test/innodb-autoinc.test
        
        branches/5.1: Reset the statement level autoinc counter on ROLLBACK. Fix
        the test results too.
        rb://164
        
        ------------------------------------------------------------------------
        r6053 | sunny | 2009-10-12 07:37:49 +0300 (Mon, 12 Oct 2009) | 6 lines
        Changed paths:
           M /branches/5.1/handler/ha_innodb.cc
           M /branches/5.1/mysql-test/innodb-autoinc.result
           M /branches/5.1/mysql-test/innodb-autoinc.test
        
        branches/5.1: Copy the maximum AUTOINC value from the old table to the new
        table when MySQL does a CREATE INDEX ON T. This is required because MySQL
        does a table copy, rename and drops the old table.
        Fix Bug#47125: auto_increment start value is ignored if an index is created and engine=innodb
        rb://168
        
        ------------------------------------------------------------------------
        r6076 | vasil | 2009-10-14 19:30:12 +0300 (Wed, 14 Oct 2009) | 4 lines
        Changed paths:
           M /branches/5.1/row/row0mysql.c
        
        branches/5.1:
        
        Fix typo.
        
        ------------------------------------------------------------------------
      976696fe
    • Sergey Vojtovich's avatar
      Applying InnoDB plugin snashot · b58b72f6
      Sergey Vojtovich authored
      Detailed revision comments:
      
      r6112 | calvin | 2009-10-29 16:21:15 +0200 (Thu, 29 Oct 2009) | 4 lines
      branches/zip: consideration for icc compilers
      
      Proposed by MySQL, and approved by Marko.
      b58b72f6
    • Sergey Vojtovich's avatar
      Applying InnoDB plugin snashot · 640f1009
      Sergey Vojtovich authored
      Detailed revision comments:
      
      r6110 | marko | 2009-10-29 12:44:57 +0200 (Thu, 29 Oct 2009) | 2 lines
      branches/zip: Makefile.am (INCLUDES): Merge a change from MySQL:
      Use $(srcdir)/include instead of $(top_srcdir)/storage/innobase/include.
      r6111 | marko | 2009-10-29 13:04:11 +0200 (Thu, 29 Oct 2009) | 33 lines
      branches/zip: Fix corruption of buf_pool->LRU_old and improve debug assertions.
      This was reported as Issue #381.
      
      buf_page_set_old(): Assert that blocks may only be set old if
      buf_pool->LRU_old is initialized and buf_pool->LRU_old_len is nonzero.
      Assert that buf_pool->LRU_old points to the block at the old/new boundary.
      
      buf_LRU_old_adjust_len(): Invoke buf_page_set_old() after adjusting
      buf_pool->LRU_old and buf_pool->LRU_old_len, in order not to violate
      the added assertions.
      
      buf_LRU_old_init(): Replace buf_page_set_old() with a direct
      assignment to bpage->old, because these loops that initialize all the
      blocks would temporarily violate the assertions about
      buf_pool->LRU_old.
      
      buf_LRU_remove_block(): When setting buf_pool->LRU_old = NULL, also
      clear all bpage->old flags and set buf_pool->LRU_old_len = 0.
      
      buf_LRU_add_block_to_end_low(), buf_LRU_add_block_low(): Move the
      buf_page_set_old() call later in order not to violate the debug
      assertions.  If buf_pool->LRU_old is NULL, set old=FALSE.
      
      buf_LRU_free_block(): Replace the UNIV_LRU_DEBUG assertion with a
      dummy buf_page_set_old() call that performs more thorough checks.
      
      buf_LRU_validate(): Do not tolerate garbage in buf_pool->LRU_old_len
      even if buf_pool->LRU_old is NULL.  Check that bpage->old is monotonic.
      
      buf_relocate(): Make the UNIV_LRU_DEBUG checks stricter.
      
      buf0buf.h: Revise the documentation of buf_page_t::old and
      buf_pool_t::LRU_old_len.
      640f1009