1. 05 Feb, 2010 1 commit
  2. 04 Feb, 2010 3 commits
    • He Zhenxing's avatar
      Auto merge · fce74722
      He Zhenxing authored
      fce74722
    • He Zhenxing's avatar
      Auto merge from 5.1-rep-semisync · c879ed2e
      He Zhenxing authored
      c879ed2e
    • He Zhenxing's avatar
      Bug#49894 shifted MYSQL_REPLICATION_PLUGIN number · 6ad93ebb
      He Zhenxing authored
      The number for MYSQL_REPLICATION_PLUGIN was shifted when backporting
      because MYSQL_AUDIT_PLUGIN was not backported.
      
      This problem is fixed by backporting only the number of audit plugin
      and print an error when trying to load audit plugins. Note that
      replication plugins compiled against old MYSQL_REPLICATION_PLUGIN
      number will also be recognized as audit plugin and be rejected.
      
      include/mysql/plugin.h:
        backporting the number of audit plugin (MYSQL_AUDIT_PLUGIN)
      sql/sql_plugin.cc:
        backporting the number of audit plugin (MYSQL_AUDIT_PLUGIN)
        print an error when trying to load audit plugins
      6ad93ebb
  3. 03 Feb, 2010 6 commits
    • Alexander Nozdrin's avatar
      Manual merge from mysql-5.1-bugteam. · 1a46ff87
      Alexander Nozdrin authored
      Conflicts:
        - configure.in
        - mysql-test/include/setup_fake_relay_log.inc
        - sql/sql_select.cc
      1a46ff87
    • Luis Soares's avatar
      BUG#50364: FLUSH LOGS crashes the server (rpl.rpl_heartbeat_basic · 55aab082
      Luis Soares authored
      fails in PB sporadically)
            
      The IO thread can concurrently access the relay log IO_CACHE
      while another thread is performing an FLUSH LOGS procedure.
            
      FLUSH LOGS closes and reopens the relay log and while doing so it
      (re)initializes its IO_CACHE. During this procedure the IO_CACHE
      mutex is also reinitialized, which can cause problems if some
      other thread (namely the IO THREAD) is concurrently accessing it
      at the time .
            
      This patch fixes the problem by extending the interface of the
      flush_master_info function to also include a second paramater, 
      "need_relay_log_lock", stating whether the thread should grab the 
      relay log lock or not before actually flushing the relay log. 
      Also, IO thread now calls flush_master_info with this flag set 
      when it flushes master info with in the event read_event loop.
      
      Finally, we also increase loop time in rpl_heartbeat_basic test 
      case, so that the number of calls to flush logs doubles, stressing
      this part of the code a little more.
      
      mysql-test/suite/rpl/t/rpl_heartbeat_basic.test:
        Doubled the number of iterations on the FLUSH LOGS loop by
        doubling the time available to perform all iterations.
      sql/repl_failsafe.cc:
        Updating flush_master_info call so that it uses two parameters
        instead of one.
      sql/rpl_mi.cc:
        Updating flush_master_info call so that it uses two parameters
        instead of one.
      sql/rpl_mi.h:
        Changed flush_master_info interface. Now takes a second parameter
        instead of just one. The second parameter is: need_lock_relay_log.
      sql/rpl_rli.cc:
        Small fix in comment.
      sql/slave.cc:
        Updating flush_master_info call so that it uses two parameters
        instead of one.
      sql/sql_repl.cc:
        Updating flush_master_info call so that it uses two parameters
        instead of one.
      55aab082
    • Alexander Nozdrin's avatar
      Manual merge from mysql-5.1-bugteam. · defe010c
      Alexander Nozdrin authored
      Conflicts:
        - sql/mysqld.cc
      defe010c
    • Alexander Nozdrin's avatar
      Manual merge from mysql-5.1-bugteam. · cf55cf59
      Alexander Nozdrin authored
      Conflicts:
        - mysql-test/collections/default.experimental
        - mysql-test/suite/rpl/r/rpl_sp.result
      cf55cf59
    • Kent Boortz's avatar
      0a90bfe6
    • Luis Soares's avatar
  4. 02 Feb, 2010 6 commits
    • Kent Boortz's avatar
      Changes to be able to create source TAR packages with longer · 673ec7b2
      Kent Boortz authored
      path names than 99 characters, using the USTAR format of the
      resulting source TAR.
      
      To be able to specify the use of USTAR when creating the source
      TAR, we needed both to update the GNU autotools version requirements
      slightly, and update the initiation of the tools to use more
      modern constructs.
      673ec7b2
    • 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
    • Luis Soares's avatar
      BUG#47639: The rpl_binlog_corruption test fails on Windows · 56b911f8
      Luis Soares authored
      The test case rpl_binlog_corruption fails on windows because when
      adding a line to the binary log index file it gets terminated
      with a CR+LF (which btw, is the normal case in windows, but not on
      Unixes - LF). This causes mismatch between the relay log names,
      causing mysqld to report that it cannot find the log file.
      
      We fix this by creating the instrumented index file through
      mysql, ie, using SELECT ... INTO DUMPFILE ..., as opposed on
      relying on ultimatly OS commands like: -- echo "..." >
      index. These changes go into the file and make the procedure
      platform independent:
      
        include/setup_fake_relay_log.inc
      
      Side note: when using SELECT ... INTO DUMPFILE ..., one needs to
      check if mysqld is running with secure_file_priv. If it is, we do
      it in two steps: 1. create the file on the allowed location;
      2. move it to the datadir. If it is not, then we just create the
      file directly on the datadir (so previous step 2. is not needed).
      56b911f8
    • 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
  5. 01 Feb, 2010 3 commits
  6. 31 Jan, 2010 1 commit
  7. 30 Jan, 2010 8 commits
    • Alexander Nozdrin's avatar
    • unknown's avatar
      Auto Merge fix for bug#50157 · 54fc7997
      unknown authored
      54fc7997
    • Alexander Nozdrin's avatar
      Manual merge from mysql-5.1-bugteam. · 0da16c7c
      Alexander Nozdrin authored
      Conflicts:
        - mysql-test/collections/default.experimental
        - mysql-test/suite/rpl/r/rpl_binlog_grant.result
        - mysql-test/suite/rpl/r/rpl_sp.result
        - mysql-test/suite/rpl/t/rpl_binlog_grant.test
        - mysql-test/suite/rpl/t/rpl_get_master_version_and_clock.test
      0da16c7c
    • Alexander Nozdrin's avatar
      Manual merge from mysql-5.1-bugteam. · 5aa4c33e
      Alexander Nozdrin authored
      Conflicts:
        - sql/mysql_priv.h
      5aa4c33e
    • Alexander Nozdrin's avatar
      Null-merge from mysql-5.1-bugteam. · b436e0ae
      Alexander Nozdrin authored
      b436e0ae
    • Alexander Nozdrin's avatar
      Auto-merge from mysql-5.1-bugteam. · 6ee51dc7
      Alexander Nozdrin authored
      6ee51dc7
    • unknown's avatar
      BUG#50157 Assertion !active_tranxs_->is_tranx_end_pos(..) in ReplSemiSyncMaster::commitTrx · a1bfae20
      unknown authored
      The root cause of the crash is that a TranxNode is freed before it is used.
      A TranxNode is allocated and inserted into the active list each time 
      a log event is written and flushed into the binlog file. 
      The memory for TranxNode is allocated with thd_alloc and will be freed 
      at the end of the statement. The after_commit/after_rollback callback
      was supposed to be called before the end of each statement and remove the node from
      the active list. However this assumption is not correct in all cases(e.g. call 
      'CREATE TEMPORARY TABLE myisam_t SELECT * FROM innodb_t' in a transaction
       and delete all temporary tables automatically when a session closed), 
      and can cause the memory allocated for TranxNode be freed
      before it was removed from the active list. So The TranxNode pointer in the active
      list would become a wild pointer and cause the crash.
      
      After this patch, We have a class called a TranxNodeAllocate which manages the memory
      for allocating and freeing TranxNode. It uses my_malloc to allocate memory.
      
      
      sql/rpl_handler.cc:
        params are not initialized.
      a1bfae20
    • unknown's avatar
      Bug #48321 CURRENT_USER() incorrectly replicated for DROP/RENAME USER; · d9e9a73e
      unknown authored
                  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.
      d9e9a73e
  8. 29 Jan, 2010 3 commits
    • Georgi Kodinov's avatar
      merge · f51a45cd
      Georgi Kodinov authored
      f51a45cd
    • Georgi Kodinov's avatar
      Bug #50642 : ssl certs in test suite are expiring soon. · d468e242
      Georgi Kodinov authored
      Updated the certs to expire on 2015. 
      Made sure they work with both yassl and openssl.
      d468e242
    • Ramil Kalimullin's avatar
      Fix for bug#49897: crash in ptr_compare when char(0) NOT NULL · 172af372
      Ramil Kalimullin authored
      column is used for ORDER BY
      
      Problem: filesort isn't meant for null length sort data
      (e.g. char(0)), that leads to a server crash.
      
      Fix: disregard sort order if sort data record length is 0 (nothing
      to sort).
      
      
      mysql-test/r/select.result:
        Fix for bug#49897: crash in ptr_compare when char(0) NOT NULL 
        column is used for ORDER BY
          - test result.
      mysql-test/t/select.test:
        Fix for bug#49897: crash in ptr_compare when char(0) NOT NULL 
        column is used for ORDER BY
          - test case.
      sql/filesort.cc:
        Fix for bug#49897: crash in ptr_compare when char(0) NOT NULL 
        column is used for ORDER BY
          - assert added as filesort cannot handle null length sort data.
      sql/sql_select.cc:
        Fix for bug#49897: crash in ptr_compare when char(0) NOT NULL 
        column is used for ORDER BY
          - don't sort null length data e.g. in case of ORDER BY CHAR(0).
      172af372
  9. 28 Jan, 2010 2 commits
  10. 29 Jan, 2010 2 commits
  11. 28 Jan, 2010 3 commits
    • Davi Arnaut's avatar
      Fix for compiler warnings: · c3a73a8f
      Davi Arnaut authored
      Rename method as to not hide a base.
      Reorder attributes initialization.
      Remove unused variable.
      Rework code to silence a warning due to assignment used as truth value.
      
      
      sql/item_strfunc.cc:
        Rename method as to not hide a base.
      sql/item_strfunc.h:
        Rename method as to not hide a base.
      sql/log_event.cc:
        Reorder attributes initialization.
      sql/rpl_injector.cc:
        Rework code to silence a warning due to assignment used as truth value.
      sql/rpl_record.cc:
        Remove unused variable.
      sql/sql_db.cc:
        Rework code to silence a warning due to assignment used as truth value.
      sql/sql_parse.cc:
        Rework code to silence a warning due to assignment used as truth value.
      sql/sql_table.cc:
        Rework code to silence a warning due to assignment used as truth value.
      c3a73a8f
    • Andrei Elkin's avatar
      1750b79f
    • Andrei Elkin's avatar
      0c0eb1d4
  12. 27 Jan, 2010 2 commits