1. 26 Sep, 2013 1 commit
    • Shivji Kumar Jha's avatar
      BUG#16580366- MTR TESTS FAILING SPORADICALLY ON PB2 (5.5, 5.6 AND 5.7) · d4011a61
      Shivji Kumar Jha authored
                    DURING INNODB RECOVERY
      
      Problem:
      =======
      The connection 'master' is dropped by mysqltest after
      rpl_end.inc. At this point, dropping temporary tables
      at the connection 'master' are not synced at slave.
      So, the temporary tables replicated from master remain
      on slave leading to an inconsistent close of the test.
      The following test thus complains about the presence of
      temporary table(s) left over from the previous test.
      
      Fix:
      ===
      - Put explicit drop commands in replication tests so
        that the temporary tables are dropped at slave as well.
      - Added the check for Slave_open_temp_tables in
        mtr_check.sql to warn about the remaining temporary
        table, if any, at the close of a test.
      d4011a61
  2. 23 Sep, 2013 1 commit
    • Sujatha Sivakumar's avatar
      Bug#17327454:SEMI-SYNC REPLICATION MASTER CRASH WHEN SET · cc4043f0
      Sujatha Sivakumar authored
      RPL_SEMI_SYNC_MASTER_ENABLED OFF.
      
      Problem:
      =======
      If master is waiting for a reply from slave, at this time
      set global rpl_semi_sync_master_enabled=OFF, the master
      server will crash.
      
      Analysis:
      ========
      When master is waiting for a reply from slave, at this time
      if semi sync is switched off on master, during switch off if
      active transactions are present the transactions will be
      cleared and "active_tranxs_" variable will be set to NULL.
      
      When the waiting master connection finds that semi sync is
      switched of it tries to access "active_tranxs_" without
      checking if the transaction list exists or not. Accessing
      NULL transaction list causes the crash.
      
      Fix:
      ===
      A check has been added to see a valid list exists before
      accessing the "active_tranxs_".
      
      plugin/semisync/semisync_master.cc:
        Added check for the existence of valid 'active_transx_'.
      cc4043f0
  3. 20 Sep, 2013 4 commits
  4. 19 Sep, 2013 1 commit
  5. 17 Sep, 2013 1 commit
  6. 12 Sep, 2013 4 commits
  7. 11 Sep, 2013 1 commit
    • Satya Bodapati's avatar
      Bug#16752251 - INNODB DOESN'T REDO-LOG INSERT BUFFER MERGE OPERATION IF · 59402fe0
      Satya Bodapati authored
      	       IT IS DONE IN-PLACE
      
      With change buffer enabled, InnoDB doesn't write a transaction log
      record when it merges a record from the insert buffer to an secondary
      index page if the insertion is performed as an update-in-place.
      
      Fixed by logging the 'update-in-place' operation on secondary index
      pages.
      
      Approved by Marko. rb#2429
      59402fe0
  8. 10 Sep, 2013 2 commits
    • mithun's avatar
      Bug #16978278 : BUFFER OVERFLOW WHEN PRINTING A LARGE 64-BIT INTEGER · 42501173
      mithun authored
                      WITH MY_B_VPRINTF()
      Issue         : In LP 64 machine max long value can be 20 digit
                      decimal value. But in my_b_vprintf() the intermediate
                      buffer storage used is 17 bytes length. This will lead to
                      buffer overflow.
      Solution      : Increased the buffer storage from 17 to 32 bytes.
                      code is backported from 5.6
      
      
      mysys/mf_iocache2.c:
        In function my_b_vprintf increased the size of local buff from 17 to
        32 bytes.
      42501173
    • Tor Didriksen's avatar
      Bug#16482467 ORDER BY IGNORED IN SOME SITUATIONS FOR UPDATE QUERY · b9ec1837
      Tor Didriksen authored
      For queries like
      update t1 set ... where <unique key> order by ... limit ...
      we need to handle the fact that unique keys allow NULL
      values, and hence can return more than one row.
      
      
      sql/opt_range.cc:
        When the unique key has multiple key parts,
        check each key_part for nullability, rather than the first key part.
        (s/key->part ==/key_tree->part ==/)
        
        Also: revert the if() test, for better readability.
      b9ec1837
  9. 11 Sep, 2013 1 commit
  10. 10 Sep, 2013 6 commits
  11. 09 Sep, 2013 8 commits
  12. 06 Sep, 2013 1 commit
  13. 05 Sep, 2013 2 commits
  14. 04 Sep, 2013 1 commit
    • Neeraj Bisht's avatar
      Bug#17222452 - SELECT COUNT(DISTINCT A,B) INCORRECTLY COUNTS ROWS · e203951c
      Neeraj Bisht authored
      	       CONTAINING NULL
      
      Problem:-
      In MySQL, We can obtain the number of distinct expression
      combinations that do not contain NULL by giving a list of 
      expressions in COUNT(DISTINCT).
      However rows with NULL values are
      incorrectly included in the count when loose index scan is 
      used.
      
      Analysis:-
      In case of loose index scan, we check whether the field is null or 
      not and increase the count in Item_sum_count::add().
      But there we are checking for the first field in COUNT(DISTINCT), 
      not for every field. This is causing an incorrect result.
      
      Solution:-
      Check all field in Item_sum_count::add(), whether there values 
      are null or not. Then only increment the count.
      ******
      Bug#17222452 - SELECT COUNT(DISTINCT A,B) INCORRECTLY COUNTS ROWS 
      	       CONTAINING NULL
      
      Problem:-
      In MySQL, We can obtain the number of distinct expression
      combinations that do not contain NULL by giving a list of 
      expressions in COUNT(DISTINCT).
      However rows with NULL values are
      incorrectly included in the count when loose index scan is 
      used.
      
      Analysis:-
      In case of loose index scan, we check whether the field is null or 
      not and increase the count in Item_sum_count::add().
      But there we are checking for the first field in COUNT(DISTINCT), 
      not for every field. This is causing an incorrect result.
      
      Solution:-
      Check all field in Item_sum_count::add(), whether there values 
      are null or not. Then only increment the count.
      e203951c
  15. 03 Sep, 2013 1 commit
  16. 02 Sep, 2013 1 commit
    • Arun Kuruvila's avatar
      Bug #17168602 MYSQL_PLUGIN REMOVES NON-DIRECTORY TYPE FILES · a7526397
      Arun Kuruvila authored
                    SPECIFIED WITH THE BASEDIR OPTION
      
      Description: The mysql_plugin client attempts to remove any
      filename specified to the --basedir option. The problem is 
      that if the filename does not end with a slash, it will 
      attempt to unlink it, which succeeds for files, but not for 
      directories.
      
      Analysis: When we are starting mysql_plugin with basedir 
      option and if we are giving path of a file as basedir, it 
      deletes that file. It was because it uses a function 
      my_delete which unlinks the file path given.
      
      Fix:  As a fix we replace that line using another function 
      my_free, which will only free the  pointer which is having 
      that file path.
      a7526397
  17. 01 Sep, 2013 1 commit
  18. 30 Aug, 2013 3 commits