1. 09 Oct, 2013 2 commits
    • Praveenkumar Hulakund's avatar
      Bug#17474166 - EXECUTING STATEMENT LIKE 'SHOW ENGINE INNODB' · c66a037d
      Praveenkumar Hulakund authored
                     AND 'KILL SESSION' LEAD TO CRASH               
      
      Analysis:
      --------
      This situation occurs when the connection executes query 
      "show engine innodb status" and this connection is killed by
      executing statement "kill <con>" by another connection.
      
      In function "innodb_show_status", function "stat_print"
      is called to print the status but return value of function
      is not checked.  After killing connection, if write to 
      connection fails then error is returned and same is set
      in Diagnostic area. Since FALSE is returned from
      "innodb_show_status" now, assert to check no error
      is set in function "set_eof_status" (called from
      my_eof) is failing. 
      
      Fix:
      ----
      Changed code to check return value of function "stat_print"
      in "innodb_show_status".
      c66a037d
    • Sreedhar.S's avatar
  2. 07 Oct, 2013 8 commits
  3. 06 Oct, 2013 1 commit
  4. 05 Oct, 2013 1 commit
    • Praveenkumar Hulakund's avatar
      Bug#11745656 - KILL THREAD -> ERROR: "SERVER SHUTDOWN IN PROGRESS" · c904103b
      Praveenkumar Hulakund authored
      Description:
      ------------
      There are 2 issues reported in the bug report,
      
      1. One session running a "long" select, then, from the other
      session, you kill that first one, while select is
      running, and it receives that message "Server shutdown in
      progress".
      Reported Date: 02-Apr-2006
      
      => Looks like this isuse is already fixed in 2009 by the patch
         pushed for bug28141. 
      
      2. Killing query which goes to filesort, logs error entries like:
      
      120416  9:17:28 [ERROR] mysqld: Sort aborted: Server shutdown in
                                                    progress 
      120416  9:18:48 [ERROR] mysqld: Sort aborted: Server shutdown in
                                                    progress 
      120416  9:19:39 [ERROR] mysqld: Sort aborted: Server shutdown in
                                                    progress 
      Reported Date: 16-Apr-2012                                              
      
      => This issue is introduced in 5.5+ versions. Fixing this issue
         in this patch.
      
      
      Analysis:
      ---------
      In function "filesort()", on error we are logging error message.
      To the error message, the message related THD::killed_errno is
      also appeneded, if it is set.(THD::kill_errno value is obtained
      by calling member function THD::killed_errno)
      
      In the scenario mentioned in this bug report, when we kill the
      connection, THD::kill_errno is set to the THD::KILL_CONNECTION.
      Enum type THD::KILL_CONNECTION corressponds to value 
      ER_SERVER_SHUTDOWN. Because of this, "Server shutdown in ...." is
      appended to the message logged.
      
      Fix:
      ----
      Modified code of "filesort()" function to append "KILL_QUERY"
      status to error message when thread is killed and server
      shutdown is not in progress.
      c904103b
  5. 04 Oct, 2013 1 commit
  6. 01 Oct, 2013 2 commits
    • unknown's avatar
      No commit message · 19689875
      unknown authored
      No commit message
      19689875
    • Mattias Jonsson's avatar
      Bug#14621190: HA_INNOBASE::INDEX_NEXT SKIPS A RECORD IF PREVIOUS · 6ca4be9c
      Mattias Jonsson authored
      INDEX_READ_MAP HAD NO MATCH
      
      If index_read_map is called for exact search and no matching records
      exists it will position the cursor on the next record, but still having the
      relative position to BTR_PCUR_ON.
      This will make a call for index_next to read yet another next record,
      instead of returning the record the cursor points to.
      
      Fixed by setting pcur->rel_pos = BTR_PCUR_BEFORE if an exact
      [prefix] search is done, but failed.
      
      Also avoids optimistic restoration if rel_pos != BTR_PCUR_ON,
      since btr_cur may be different than old_rec.
      
      rb#3324, approved by Marko and Jimmy
      6ca4be9c
  7. 30 Sep, 2013 5 commits
  8. 27 Sep, 2013 2 commits
    • Satya Bodapati's avatar
      Merge fix for BUG#17446090 from mysql-5.1 to mysql-5.5 · 436fd04b
      Satya Bodapati authored
      The testcase for this bug fails randomly due to two reasons.
      1. Due to ibuf merge happening background
      2. Due to dict stats update which brings the evicted page back into
         buffer pool.
      
      Fix ibuf_contract_ext() to not do any merges with ibuf_debug enabled and
      also changed dict_stats_update() to return fake statistics without
      bringing the secondary index pages into buffer pool.
      
      Approved by Marko. rb#3419
      436fd04b
    • unknown's avatar
      No commit message · 797a49f8
      unknown authored
      No commit message
      797a49f8
  9. 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
  10. 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
  11. 20 Sep, 2013 4 commits
  12. 19 Sep, 2013 1 commit
  13. 17 Sep, 2013 1 commit
  14. 12 Sep, 2013 4 commits
  15. 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
  16. 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
  17. 11 Sep, 2013 1 commit
  18. 10 Sep, 2013 2 commits