1. 03 Feb, 2010 5 commits
  2. 02 Feb, 2010 8 commits
    • Georgi Kodinov's avatar
      Bug #49445: Assertion failed: 0, file .\item_row.cc, line 55 with · e4b71385
      Georgi Kodinov authored
        fulltext search and row op.
      
      The search for fulltext indexes is searching for some special 
      predicate layouts. While doing so it's not checking for the number
      of columns of the expressions it tries to calculate.
      And since row expressions can't return a single scalar value there
      was a crash.
      Fixed by checking if the expressions are scalar (in addition to 
      being constant) before calling Item::val_xxx() methods.
      e4b71385
    • Magne Mahre's avatar
      Cleanup fix for WL#5154 that splits commands handling for · 090c75d2
      Magne Mahre authored
      --default-character-set and --character-set-server such
      that only the first will give a deprecation warning.
      Apart from that, the two options should do the same.
      090c75d2
    • Alexander Nozdrin's avatar
      Revert a patch for Bug#48231, which introduced valgrind warnings. · 59f1be1b
      Alexander Nozdrin authored
      Original revision:
      ------------------------------------------------------------
      revision-id: li-bing.song@sun.com-20100130124925-o6sfex42b6noyc6x
      parent: joro@sun.com-20100129145427-0n79l9hnk0q43ajk
      committer: <Li-Bing.Song@sun.com>
      branch nick: mysql-5.1-bugteam
      timestamp: Sat 2010-01-30 20:49:25 +0800
      message:
        Bug #48321  CURRENT_USER() incorrectly replicated for DROP/RENAME USER;
                    REVOKE/GRANT; ALTER EVENT.
        
        The following statements support the CURRENT_USER() where a user is needed.
          DROP USER 
          RENAME USER CURRENT_USER() ...
          GRANT ... TO CURRENT_USER()
          REVOKE ... FROM CURRENT_USER()
          ALTER DEFINER = CURRENT_USER() EVENT
        but, When these statements are binlogged, CURRENT_USER() just is binlogged
        as 'CURRENT_USER()', it is not expanded to the real user name. When slave 
        executes the log event, 'CURRENT_USER()' is expand to the user of slave 
        SQL thread, but SQL thread's user name always NULL. This breaks the replication.
        
        After this patch, All above statements are rewritten when they are binlogged.
        The CURRENT_USER() is expanded to the real user's name and host.
      ------------------------------------------------------------
      59f1be1b
    • Davi Arnaut's avatar
      Fix for valgrind warning: check whether pointer was initialized. · 2db68457
      Davi Arnaut authored
      storage/myisammrg/ha_myisammrg.cc:
        myisam pointer is not relevant if a error was raised.
      2db68457
    • Georgi Kodinov's avatar
      1dafac6f
    • Alexander Nozdrin's avatar
      BUG#50767: Some RPL tests started to fail in next-mr-merge on · ab61c15e
      Alexander Nozdrin authored
      Linux x86_64 debug
      
      Two test cases fail because the suppression for the unsafe
      warning needs to be updated (BUG@39934 refactored this part and
      these changes are only in mysql-next-mr - this is why we notice
      them now when merging in next-mr). This is the case for
      rpl_nondeterministic_functions and rpl_misc_functions test
      cases. rpl_stm_binlog_direct test case is not needed in version >
      5.1. The rpl_heartbeat_basic test case fails because patch for
      BUG@50397 removed the CHANGE MASTER in the slave that would set
      it's period to 1/10 of the master. This would cause the test
      assertion to fail.
      
      The fixes for the issues described above are:
      
       - rpl_misc_functions - updated suppression message
       - rpl_nondeterministic_functions - updated suppression message
       - rpl_stm_binlog_direct - removed the test case (it is not 
                                 needed in versions > 5.1)
       - rpl_heartbeat_basic - deployed instruction: 
         CHANGE MASTER TO MASTER_HEARTBEAT_PERIOD=0.1;
      ab61c15e
    • Alexander Nozdrin's avatar
      Manual merge of patch for Bug#46364 from mysql-next-mr-bugfixing. · 6f957334
      Alexander Nozdrin authored
      Conflicts:
        - mysql-test/r/mysqld--help-win.result
        - sql/sys_vars.cc
      
      Original revsion (in next-mr-bugfixing):
      ------------------------------------------------------------
      revno: 2971 [merge]
      revision-id: alfranio.correia@sun.com-20100121210527-rbuheu5rnsmcakh1
      committer: Alfranio Correia <alfranio.correia@sun.com>
      branch nick: mysql-next-mr-bugfixing
      timestamp: Thu 2010-01-21 21:05:27 +0000
      message:
        BUG#46364 MyISAM transbuffer problems (NTM problem)
              
        It is well-known that due to concurrency issues, a slave can become
        inconsistent when a transaction contains updates to both transaction and
        non-transactional tables.
                            
        In a nutshell, the current code-base tries to preserve causality among the
        statements by writing non-transactional statements to the txn-cache which
        is flushed upon commit. However, modifications done to non-transactional
        tables on behalf of a transaction become immediately visible to other
        connections but may not immediately get into the binary log and therefore
        consistency may be broken.
                    
        In general, it is impossible to automatically detect causality/dependency
        among statements by just analyzing the statements sent to the server. This
        happen because dependency may be hidden in the application code and it is
        necessary to know a priori all the statements processed in the context of
        a transaction such as in a procedure. Moreover, even for the few cases that
        we could automatically address in the server, the computation effort
        required could make the approach infeasible.
                    
        So, in this patch we introduce the option
              - "--binlog-direct-non-transactional-updates" that can be used to bypass
              the current behavior in order to write directly to binary log statements
              that change non-transactional tables.
        
        Besides, it is used to enable the WL#2687 which is disabled by default.
          ------------------------------------------------------------
          revno: 2970.1.1
          revision-id: alfranio.correia@sun.com-20100121131034-183r4qdyld7an5a0
          parent: alik@sun.com-20100121083914-r9rz2myto3tkdya0
          committer: Alfranio Correia <alfranio.correia@sun.com>
          branch nick: mysql-next-mr-bugfixing
          timestamp: Thu 2010-01-21 13:10:34 +0000
          message:
            BUG#46364 MyISAM transbuffer problems (NTM problem)
                  
            It is well-known that due to concurrency issues, a slave can become
            inconsistent when a transaction contains updates to both transaction and
            non-transactional tables.
                                
            In a nutshell, the current code-base tries to preserve causality among the
            statements by writing non-transactional statements to the txn-cache which
            is flushed upon commit. However, modifications done to non-transactional
            tables on behalf of a transaction become immediately visible to other
            connections but may not immediately get into the binary log and therefore
            consistency may be broken.
                        
            In general, it is impossible to automatically detect causality/dependency
            among statements by just analyzing the statements sent to the server. This
            happen because dependency may be hidden in the application code and it is
            necessary to know a priori all the statements processed in the context of
            a transaction such as in a procedure. Moreover, even for the few cases that
            we could automatically address in the server, the computation effort
            required could make the approach infeasible.
                        
            So, in this patch we introduce the option
                  - "--binlog-direct-non-transactional-updates" that can be used to bypass
                  the current behavior in order to write directly to binary log statements
                  that change non-transactional tables.
            
            Besides, it is used to enable the WL#2687 which is disabled by default.
      6f957334
    • Alexander Nozdrin's avatar
      Remove binlog_direct_non_transactional_updates_basic.test and · 5d354773
      Alexander Nozdrin authored
      binlog_direct_non_transactional_updates_basic.result. They will
      be added by a cherry-picking merge from mysql-next-mr-bugfixing
      (Bug#50766).
      5d354773
  3. 01 Feb, 2010 5 commits
  4. 31 Jan, 2010 3 commits
  5. 30 Jan, 2010 19 commits