1. 03 Nov, 2014 1 commit
    • Jan Lindström's avatar
      MDEV-6929: Port Facebook Prefix Index Queries Optimization · cb37c557
      Jan Lindström authored
      Merge Facebook commit 154c579b828a60722a7d9477fc61868c07453d08
      and e8f0052f9b112dc786bf9b957ed5b16a5749f7fd authored
      by Steaphan Greene from https://github.com/facebook/mysql-5.6
      
      Optimize prefix index queries to skip cluster index lookup when possible.
      
      Currently InnoDB will always fetch the clustered index (primary key
      index) for all prefix columns in an index, even when the value of a
      particular record is smaller than the prefix length. This change
      optimizes that case to use the record from the secondary index and avoid
      the extra lookup.
      
      Also adds two status vars that track how effective this is:
      
      innodb_secondary_index_triggered_cluster_reads:
      Times secondary index lookup triggered cluster lookup.
      
      innodb_secondary_index_triggered_cluster_reads_avoided:
      Times prefix optimization avoided triggering cluster lookup.
      cb37c557
  2. 30 Oct, 2014 2 commits
  3. 29 Oct, 2014 4 commits
    • Jan Lindström's avatar
      MDEV-6932: Enable Lazy Flushing · 2bf3e416
      Jan Lindström authored
      Merge Facebook commit 4f3e0343fd2ac3fc7311d0ec9739a8f668274f0d
      authored by Steaphan Greene from https://github.com/facebook/mysql-5.6
      
      Adds innodb_idle_flush_pct to enable tuning of the page flushing rate
      when the system is relatively idle. We care about this, since doing
      extra unnecessary flash writes shortens the lifespan of the flash.
      2bf3e416
    • Jan Lindström's avatar
      MDEV-6935: Change the default value for innodb_log_compressed_pages to false · 58888e2c
      Jan Lindström authored
      Merge Facebook commit ca40b4417fd224a68de6636b58c92f133703fc68
      authored by Steaphan Greene from https://github.com/facebook/mysql-5.6
      Change the default value for innodb_log_compressed_pages to false
      
      Logging these pages is a waste. We don't want this to be enabled.
      
      One caution here: If the zlib version used by innodb is changed, but
      the running version is still the previous version, and the running
      version crashes, it is possible crash recovery could fail.
      
      When crash recovery uses a zlib version at all different than the
      version used by the crashed instance, it is possible that a redone
      compression could fail, where the original did not, because the new
      zlib version compresses the same data to a slightly larger size.
      
      Because of the nature of compression, this is even possible when
      upgrading to a version of zlib which actually peforms overall better
      compression than the previous version.
      
      If this happens, mysql will fail to recover, since a page split can
      not be safely triggered during crash recovery.
      
      So, either the exact zlib version must be controlled between builds,
      or these rare recovery failures must be accepted. The cost of
      logging these pages is quite high, so we consider this limitation to
      be worthwhile.
      
      This failure scenario can not happen if there was a clean shutdown.
      This is only relevant to restarting crashed instances, or starting an
      instance built via a hot backup too (XtraBackup).
      58888e2c
    • Jan Lindström's avatar
      MDEV-6968: CREATE TABLE crashes with InnoDB plugin · 2d2d11f0
      Jan Lindström authored
      Analysis: fil_extend_space_to_desired_size() does not provide file
      node to os_aio(). This failed on Windows only because on Windows
      we do not use posix_fallocate() to extend file space.
      
      Fix: Add file node to os_aio() function call and make sure that
      we do not use NULL pointer at os_aio_array_reserve_slot(). Additionally,
      make sure that we do not use 0 as file_block_size (512 is the minimum).
      2d2d11f0
    • Jan Lindström's avatar
      MDEV-6648: InnoDB: Add support for 4K sector size if supported · b96697d2
      Jan Lindström authored
      New generation hard drives, SSDs and NVM devices support 4K
      sector size. Supported sector size can be found using fstatvfs()
      or GetDiskFreeSpace() functions.
      b96697d2
  4. 28 Oct, 2014 2 commits
  5. 27 Oct, 2014 1 commit
  6. 24 Oct, 2014 1 commit
  7. 22 Oct, 2014 1 commit
  8. 21 Oct, 2014 1 commit
  9. 20 Oct, 2014 1 commit
  10. 19 Oct, 2014 1 commit
  11. 17 Oct, 2014 6 commits
  12. 15 Oct, 2014 3 commits
  13. 14 Oct, 2014 3 commits
  14. 13 Oct, 2014 1 commit
  15. 12 Oct, 2014 2 commits
  16. 11 Oct, 2014 10 commits