1. 01 Mar, 2010 3 commits
  2. 26 Feb, 2010 15 commits
    • Georgi Kodinov's avatar
      merge 5.0-bugteam -> 5.1-bugteam · 5927a233
      Georgi Kodinov authored
      5927a233
    • Georgi Kodinov's avatar
      merge · 4c3005c7
      Georgi Kodinov authored
      4c3005c7
    • Georgi Kodinov's avatar
      Bug #51468: mysqld_multi is broken in 5.1.44 · cc188fb9
      Georgi Kodinov authored
      Fixed a syntax error in mysqld_multi.sh
      cc188fb9
    • Sergey Vojtovich's avatar
      Merge innodb-5.1-ss6765 to 5.1-bugteam. · f476f83b
      Sergey Vojtovich authored
      f476f83b
    • Sergey Glukhov's avatar
      automerge · 80303d7e
      Sergey Glukhov authored
      80303d7e
    • Sergey Glukhov's avatar
      Bug#50995 Having clause on subquery result produces incorrect results. · 7fd2461c
      Sergey Glukhov authored
      The problem is that cond->fix_fields(thd, 0) breaks
      condition(cuts off 'having'). The reason of that is
      that NULL valued Item pointer is present in the
      middle of Item list and it breaks the Item processing
      loop.
      
      
      mysql-test/r/having.result:
        test case
      mysql-test/t/having.test:
        test case
      sql/item_cmpfunc.h:
        added ASSERT to make sure that we do not add NULL valued Item pointer
      sql/sql_select.cc:
        skip adding an item to condition if Item pointer is NULL.
        skip adding a list to condition if this list is empty.
      7fd2461c
    • Evgeny Potemkin's avatar
      Auto-merged fox for the bug#50843. · 97e5e12a
      Evgeny Potemkin authored
      97e5e12a
    • Evgeny Potemkin's avatar
      Bug#50843: Filesort used instead of clustered index led to · 09d5f8b7
      Evgeny Potemkin authored
      performance degradation.
      
      Filesort + join cache combination is preferred to full index scan because it
      is usually faster. But it's not the case when the index is clustered one.
      
      Now test_if_skip_sort_order function prefers filesort only if index isn't
      clustered.
      
      mysql-test/r/innodb_mysql.result:
        Added a test case for the bug#50843.
      mysql-test/t/innodb_mysql.test:
        Added a test case for the bug#50843.
      sql/sql_select.cc:
        Bug#50843: Filesort used instead of clustered index led to
        performance degradation.
        Now test_if_skip_sort_order function prefers filesort only if index isn't
        clustered.
      09d5f8b7
    • Sergey Vojtovich's avatar
      Applying InnoDB snapshot, fixes BUG#50691 · 27384521
      Sergey Vojtovich authored
      Detailed revision comments:
      
      r6669 | jyang | 2010-02-11 12:24:19 +0200 (Thu, 11 Feb 2010) | 7 lines
      branches/5.1: Fix bug #50691, AIX implementation of readdir_r
      causes InnoDB errors. readdir_r() returns an non-NULL value
      in the case of reaching the end of a directory. It should
      not be treated as an error return.
      
      rb://238 approved by Marko
      27384521
    • Sergey Vojtovich's avatar
      Applying InnoDB snapshot, fixes BUG#38901 · 572a1bf2
      Sergey Vojtovich authored
      Detailed revision comments:
      
      r6613 | inaam | 2010-02-09 20:23:09 +0200 (Tue, 09 Feb 2010) | 11 lines
      branches/5.1: Fix Bug #38901
      InnoDB logs error repeatedly when trying to load page into buffer pool
      
      In buf_page_get_gen() if we are unable to read a page (because of
      corruption or some other reason) we keep on retrying. This fills up
      error log with millions of entries in no time and we'd eventually run
      out of disk space. This patch limits the number of attempts that we
      make (currently set to 100) and after that we abort with a message.
      
      rb://241 Approved by: Heikki
      572a1bf2
    • Sergey Vojtovich's avatar
      Applying InnoDB snapshot, fixes BUG#49001 · ca05a2cf
      Sergey Vojtovich authored
      Detailed revision comments:
      
      r6545 | jyang | 2010-02-03 03:57:32 +0200 (Wed, 03 Feb 2010) | 8 lines
      branches/5.1: Fix bug #49001, "SHOW INNODB STATUS deadlock info
      incorrect when deadlock detection aborts". Print the correct
      lock owner when recursive function lock_deadlock_recursive()
      exceeds its maximum depth LOCK_MAX_DEPTH_IN_DEADLOCK_CHECK.
      
      rb://217, approved by Marko.
      ca05a2cf
    • Sergey Vojtovich's avatar
      Applying InnoDB snapshot · c1974784
      Sergey Vojtovich authored
      Detailed revision comments:
      
      r6538 | sunny | 2010-01-30 00:43:06 +0200 (Sat, 30 Jan 2010) | 6 lines
      branches/5.1: Check *first_value every time against the column max
      value and  set *first_value to next autoinc if it's > col max value.
      ie.  not rely on what is passed in from MySQL.
      
      [49497] Error 1467 (ER_AUTOINC_READ_FAILED) on inserting a negative value
      rb://236
      c1974784
    • Sergey Vojtovich's avatar
      Applying InnoDB snapshot · 36fc6536
      Sergey Vojtovich authored
      Detailed revision comments:
      
      r6537 | sunny | 2010-01-30 00:35:00 +0200 (Sat, 30 Jan 2010) | 2 lines
      branches/5.1: Undo r6536.
      36fc6536
    • Sergey Vojtovich's avatar
      Applying InnoDB snapshot · 1c7350df
      Sergey Vojtovich authored
      Detailed revision comments:
      
      r6536 | sunny | 2010-01-30 00:13:42 +0200 (Sat, 30 Jan 2010) | 6 lines
      branches/5.1: Check *first_value everytime against the column max
      value and  set *first_value to next autoinc if it's > col max value.
      ie.  not rely on what is passed in from MySQL.
      
      [49497] Error 1467 (ER_AUTOINC_READ_FAILED) on inserting a negative value
      rb://236
      1c7350df
    • Sergey Vojtovich's avatar
      Applying InnoDB snapshot · 78a5c0ca
      Sergey Vojtovich authored
      Detailed revision comments:
      
      r6535 | sunny | 2010-01-30 00:08:40 +0200 (Sat, 30 Jan 2010) | 11 lines
      branches/5.1: Undo the change from r6424. We need to return DB_SUCCESS even
      if we were unable to initialize the tabe autoinc value. This is required for
      the open to succeed. The only condition we currently treat as a hard error
      is if the autoinc field instance passed in by MySQL is NULL.
      
      Previously if the table autoinc value was 0 and the next value was requested
      we had an assertion that would fail. Change that assertion and treat a value
      of 0 to mean that the autoinc system is unavailable. Generation of next
      value will now return failure.
      
      rb://237
      78a5c0ca
  3. 25 Feb, 2010 6 commits
    • Gleb Shchepa's avatar
      Bug #45360: wrong results · ebaba11c
      Gleb Shchepa authored
      Propagation of a large unsigned numeric constant
      in the WHERE expression led to wrong result.
      
      For example,
      "WHERE a = CAST(0xFFFFFFFFFFFFFFFF AS USIGNED) AND FOO(a)",
      where a is an UNSIGNED BIGINT, and FOO() accepts strings,
      was transformed to "... AND FOO('-1')".
      
      That has been fixed.
      
      Also EXPLAIN EXTENDED printed incorrect numeric constants in
      transformed WHERE expressions like above. That has been
      fixed too.
      
      
      mysql-test/r/bigint.result:
        Added test case for bug #45360.
      mysql-test/t/bigint.test:
        Added test case for bug #45360.
      sql/item.cc:
        Bug #45360: wrong results
        
        As far as Item_int_with_ref (and underlaying Item_int)
        class accepts both signed and unsigned 64bit values,
        Item_int::val_str and Item_int::print methods have been
        modified to take into account unsigned_flag.
      ebaba11c
    • Alexey Kopytov's avatar
      Automerge. · c50098c9
      Alexey Kopytov authored
      c50098c9
    • Christopher Powers's avatar
      Bug #48739 MySQL crashes on specific INTERVAL in select query · 271ac746
      Christopher Powers authored
            
      Fixed crash caused by x64 int/long incompatibility introduced
      in Bug #29125.
      
      
      sql/item_timefunc.cc:
        Fixed crash caused by int/long incompatibility on x64 systems.
                        
        Changed two "uint" casts and a "long" declartion to "int" in order to
        ensure that the integer sign is preserved.
                        
        See Bug #48739 for details.
      271ac746
    • Alexey Kopytov's avatar
      Bug #50335: Assertion `!(order->used & map)' in eq_ref_table · f380b946
      Alexey Kopytov authored
       
      The problem was in an incorrect debug assertion. The expression 
      used in the failing assertion states that when finding 
      references matching ORDER BY expressions, there can be only one 
      reference to a single table. But that does not make any sense, 
      all test cases for this bug are valid examples with multiple 
      identical WHERE expressions referencing the same table which
      are also present in the ORDER BY list. 
       
      Fixed by removing the failing assertion. We also have to take 
      care of the 'found' counter so that we count multiple 
      references only once. We rely on this fact later in 
      eq_ref_table(). 
      
      mysql-test/r/join.result:
        Added a test case for bug #50335.
      mysql-test/t/join.test:
        Added a test case for bug #50335.
      sql/sql_select.cc:
        Removing the assertion in eq_ref_table() as it does not make
        any sense. We also have to take care of the 'found' counter so 
        that we count multiple references only once. We rely on this 
        fact later in eq_ref_table().
      f380b946
    • Georgi Kodinov's avatar
      merge · 375ce0e5
      Georgi Kodinov authored
      375ce0e5
    • Georgi Kodinov's avatar
      1f17562f
  4. 23 Feb, 2010 2 commits
    • Magne Mahre's avatar
      Clean-up in the sys_vars test suite after · 2a68b08b
      Magne Mahre authored
      WL#5154 and WL5182
      
      Two result files in the sys_vars suite wasn't 
      properly updated after the change in
      deprecation text
      
      2a68b08b
    • Magne Mahre's avatar
      Revert of a change introduced by Bug#47974 · 786aa7f2
      Magne Mahre authored
      "TYPE=storage_engine" is deprecated, and will be removed
      in the Celosia release of MySQL.  Since the option is
      present in the Betony release and the version number of
      Celosia is still not decided, we need to bump the
      deprecation version number back up to "6.0".
      786aa7f2
  5. 22 Feb, 2010 8 commits
  6. 20 Feb, 2010 3 commits
  7. 19 Feb, 2010 3 commits
    • Tatiana A. Nurnberg's avatar
      manual merge · c9c45cae
      Tatiana A. Nurnberg authored
      c9c45cae
    • Tatiana A. Nurnberg's avatar
      Bug#49487: crash with explain extended and group_concat in a derived table · 09a58105
      Tatiana A. Nurnberg authored
      When EXPLAIN EXTENDED tries to print column names, it checks whether the
      referenced table is CONST (in which case, the column's value rather than
      its name will be printed). If no proper table is reference (i.e. because
      a derived table was used that has since gone out of scope), this will fail
      spectacularly.
      
      This ports an equivalent of the fix for Bug 43354.
      
      mysql-test/r/func_gconcat.result:
        Show that EXPLAIN EXTENDED on a GROUP_CONCAT() on a derived table
        no longer crashes the server.
      mysql-test/t/func_gconcat.test:
        Show that EXPLAIN EXTENDED on a GROUP_CONCAT() on a derived table
        no longer crashes the server.
      sql/item_sum.cc:
        Do not de-ref what cannot be, that is, temp-tables that have gone away.
        This is of questionable utility anyway, since our deref has the sole
        purpose of checking whether the table is const (in which case, we'll
        substitute the column with its value in EXPLAIN EXTENDED - that is all).
      09a58105
    • Bjorn Munch's avatar