1. 05 Nov, 2010 2 commits
    • Alfranio Correia's avatar
      babe727b
    • Alfranio Correia's avatar
      BUG#56343 binlog_cache_use status is bigger than expected · c26c9b80
      Alfranio Correia authored
      The binlog_cache_use is incremented twice when changes to a transactional table
      are committed, i.e. TC_LOG_BINLOG::log_xid calls is called. The problem happens
      because log_xid calls both binlog_flush_stmt_cache and binlog_flush_trx_cache
      without checking if such caches are empty thus unintentionally increasing the
      binlog_cache_use value twice.
      
      Although not explicitly mentioned in the bug, the binlog_cache_disk_use presents
      the same problem.
      
      The binlog_cache_use and binlog_cache_disk_use are status variables that are
      incremented when transactional (i.e. trx-cache) or non-transactional (i.e.
      stmt-cache) changes are committed. They are used to compute the ratio between
      the use of disk and memory while gathering updates for a transaction.
      
      The problem reported is fixed by avoiding incrementing the binlog_cache_use
      and binlog_cache_disk_use if a cache is empty. We also have decided to increment
      both variables when a cache is truncated as the cache is used although its
      content is discarded and is not written to the binary log.
      
      In this patch, we take the opportunity to re-organize the code around the
      function binlog_flush_trx_cache and binlog_flush_stmt_cache.
      c26c9b80
  2. 04 Nov, 2010 5 commits
  3. 03 Nov, 2010 8 commits
  4. 02 Nov, 2010 5 commits
  5. 01 Nov, 2010 5 commits
  6. 31 Oct, 2010 2 commits
    • Gleb Shchepa's avatar
      89f9f6a4
    • Gleb Shchepa's avatar
      Bug #52160: crash and inconsistent results when grouping · 0389c6aa
      Gleb Shchepa authored
                  by a function and column
      
      The bugreport reveals two different bugs about grouping
      on a function:
      
      1) grouping by the TIME_TO_SEC function result caused
         a server crash or wrong results and
      2) grouping by the function returning a blob caused
         an unexpected "Duplicate entry" error and wrong
         result.
      
      Details for the 1st bug:
      
      TIME_TO_SEC() returns NULL if its argument is invalid (empty
      string for example). Thus its nullability depends not only
      on the nullability of its arguments but also on their values.
      Fixed by (overoptimistically) setting TIME_TO_SEC() to be
      nullable despite the nullability of its arguments.
      
      Details for the 2nd bug:
      
      The server is unable to create indices on blobs without
      explicit blob key part length. However, this fact was
      ignored for blob function result fields of GROUP BY
      intermediate tables.
      Fixed by disabling GROUP BY index creation for blob
      function result fields like regular blob fields.
      0389c6aa
  7. 29 Oct, 2010 3 commits
  8. 28 Oct, 2010 2 commits
    • Calvin Sun's avatar
      Bug#52062: Compiler warning in os0file.c on windows 64-bit · bc921dd7
      Calvin Sun authored
      On Windows, the parameter for number of bytes passed into WriteFile()
      and ReadFile() is DWORD. Casting is needed to silence the warning on
      64-bit Windows.
      
      Also, adding several asserts to ensure the variable for number of bytes
      is no more than 32 bits, even on 64-bit Windows.
      
      This is for InnoDB Plugin.
      
      rb://415
      Approved by: Inaam
      bc921dd7
    • Calvin Sun's avatar
      Bug#52062: Compiler warning in os0file.c on windows 64-bit · 6cc24b9a
      Calvin Sun authored
      On Windows, the parameter for number of bytes passed into WriteFile()
      and ReadFile() is DWORD. Casting is needed to silence the warning on
      64-bit Windows.
      
      Also, adding several asserts to ensure the variable for number of bytes
      is no more than 32 bits, even on 64-bit Windows.
      
      This is for built-in InnoDB.
      
      rb://415
      Approved by: Inaam
      6cc24b9a
  9. 27 Oct, 2010 1 commit
  10. 29 Oct, 2010 3 commits
  11. 28 Oct, 2010 4 commits
    • Vasil Dimov's avatar
      Fix a compilation warning: · 2aee9fb9
      Vasil Dimov authored
      /export/home/pb2/build/sb_0-2459340-1288264809.63/mysql-5.5.8-ga/storage/innobase/os/os0sync.c: In function 'os_cond_wait_timed':
      /export/home/pb2/build/sb_0-2459340-1288264809.63/mysql-5.5.8-ga/storage/innobase/os/os0sync.c:184: warning: format '%lu' expects type 'long unsigned int', but argument 4 has type 'time_t'
      gmake[2]: *** [storage/innobase/CMakeFiles/innobase.dir/os/os0sync.c.o] Error 1 
      2aee9fb9
    • Mattias Jonsson's avatar
      post merge fix · 02f1a6cb
      Mattias Jonsson authored
      02f1a6cb
    • Calvin Sun's avatar
      eb3f0d2e
    • Calvin Sun's avatar
      Bug#52062: Compiler warning in os0file.c on windows 64-bit · c441f79a
      Calvin Sun authored
      On Windows, the parameter for number of bytes passed into WriteFile()
      and ReadFile() is DWORD. Casting is needed to silence the warning on
      64-bit Windows.
      
      Also, adding several asserts to ensure the variable for number of bytes
      is no more than 32 bits, even on 64-bit Windows.
      
      rb://415
      Approved by: Inaam
      c441f79a