1. 31 Jul, 2008 4 commits
    • Timothy Smith's avatar
      NULL MERGE of innodb-5.0-ss2475 snapshot cherry-pick (bugs: 34286, 35352, 36600) · 004c6428
      Timothy Smith authored
      These changes, where applicable, are available in 5.1-specific snapshots for MySQL 5.1+.
      004c6428
    • Timothy Smith's avatar
      Cherry-pick InnoDB fixes for Bug#34286, Bug#35352, and Bug#36600 from snapshot · 021d7d72
      Timothy Smith authored
      innodb-5.0-ss2475.
      
      Bug #34286  Assertion failure in thread 2816 in file .\row\row0sel.c line 3500
      Since autoinc init performs a MySQL SELECT query to determine the auto-inc
      value, set prebuilt->sql_stat_start = TRUE so that it is performed like any
      normal SELECT, regardless of the context in which it was invoked.
      
      
      Bug #35352  If InnoDB crashes with UNDO slots full error the error persists on restart
      We've added a heuristic that checks the size of the UNDO slots cache lists
      (insert and upate). If either of cached lists has more than 500 entries then we
      add any UNDO slots that are freed, to the common free list instead of the cache
      list, this is to avoid the case where all the free slots end up in only one of
      the lists on startup after a crash.
      
      Tested with test case for 26590 and passes all mysql-test(s).
      
      Bug #36600  SHOW STATUS takes a lot of CPU in buf_get_latched_pages_number
      Fixed by removing the Innodb_buffer_pool_pages_latched variable from SHOW
      STATUS output in non-UNIV_DEBUG compilation.
      021d7d72
    • Georgi Kodinov's avatar
      3d215551
    • Georgi Kodinov's avatar
      Bug#34159: mysql_install_db fails with sql_mode=TRADITIONAL · a0768d32
      Georgi Kodinov authored
            
      Reset session sql_mode before creating system tables as it
      is done in the mysql_fix_privilege_tables.sql script.
      a0768d32
  2. 30 Jul, 2008 1 commit
    • Georgi Kodinov's avatar
      Bug#37662 nested if() inside sum() is parsed in exponential time · 425abb49
      Georgi Kodinov authored
            
      min() and max() functions are implemented in MySQL as macros.
      This means that max(a,b) is expanded to: ((a) > (b) ? (a) : (b))
      Note how 'a' is quoted two times.
      Now imagine 'a' is a recursive function call that's several 10s of levels deep.
      And the recursive function does max() with a function arg as well to dive into
      recursion.
      This means that simple function call can take most of the clock time.
      Identified and fixed several such calls to max()/min() : including the IF() 
      sql function implementation.
      425abb49
  3. 29 Jul, 2008 1 commit
  4. 28 Jul, 2008 1 commit
  5. 26 Jul, 2008 1 commit
    • Igor Babaev's avatar
      Fixed bug #38191. · da156dde
      Igor Babaev authored
      Calling List<Cached_item>::delete_elements for the same list twice
      caused a crash of the server in the function JOIN::cleaunup.
      Ensured that delete_elements() in JOIN::cleanup would be called only once.
      da156dde
  6. 25 Jul, 2008 4 commits
  7. 24 Jul, 2008 5 commits
  8. 23 Jul, 2008 5 commits
  9. 22 Jul, 2008 17 commits
  10. 21 Jul, 2008 1 commit