1. 06 Jul, 2017 1 commit
    • Marko Mäkelä's avatar
      MDEV-13247 innodb_log_compressed_pages=OFF breaks crash recovery of ROW_FORMAT=COMPRESSED tables · 2b5c9bc2
      Marko Mäkelä authored
      The option innodb_log_compressed_pages was contributed by
      Facebook to MySQL 5.6. It was disabled in the 5.6.10 GA release
      due to problems that were fixed in 5.6.11, which is when the
      option was enabled.
      
      The option was set to innodb_log_compressed_pages=ON by default
      (disabling the feature), because safety was considered more
      important than speed. The option innodb_log_compressed_pages=OFF
      can *CORRUPT* ROW_FORMAT=COMPRESSED tables on crash recovery
      if the zlib deflate function is behaving differently (producing
      a different amount of compressed data) from how it behaved
      when the redo log records were written (prior to the crash recovery).
      
      In MDEV-6935, the default value was changed to
      innodb_log_compressed_pages=OFF. This is inherently unsafe, because
      there are very many different environments where MariaDB can be
      running, using different zlib versions. While zlib can decompress
      data just fine, there are no guarantees that different versions will
      always compress the same data to the exactly same size. To avoid
      problems related to zlib upgrades or version mismatch, we must
      use a safe default setting.
      
      This will reduce the write performance for users of
      ROW_FORMAT=COMPRESSED tables. If you configure
      innodb_log_compressed_pages=ON, please make sure that you will
      always cleanly shut down InnoDB before upgrading the server
      or zlib.
      2b5c9bc2
  2. 05 Jul, 2017 3 commits
  3. 04 Jul, 2017 1 commit
  4. 03 Jul, 2017 2 commits
    • Monty's avatar
      Ensure that we have LOG_log locked when relay_log.close is called · f8dadbdf
      Monty authored
      If open of the relay log failed, we got an assert in MYSQL_BIN_LOG::close
      This only affected DEBUG systems
      f8dadbdf
    • Kristian Nielsen's avatar
      MDEV-8075: DROP TEMPORARY TABLE not marked as ddl, causing optimistic parallel replication to fail · 228479a2
      Kristian Nielsen authored
      CREATE/DROP TEMPORARY TABLE are not safe to optimistically replicate in
      parallel with other transactions, so they need to be marked as "ddl" in the
      binlog.
      
      This was already done for stand-alone CREATE/DROP TEMPORARY. But temporary
      tables can also be created and dropped inside a BEGIN...END transaction, and
      such transactions were not marked as ddl. Nor was the DROP TEMPORARY TABLE
      statement emitted implicitly when a client connection is closed.
      
      So this patch adds such ddl mark for the missing cases.
      
      The difference to Kristian's original patch is mainly a fix in
      mysql_trans_commit_alter_copy_data() to remember the unsafe_rollback_flags
      over the temporary commit.
      228479a2
  5. 01 Jul, 2017 1 commit
  6. 30 Jun, 2017 7 commits
  7. 29 Jun, 2017 3 commits
  8. 28 Jun, 2017 1 commit
  9. 27 Jun, 2017 4 commits
  10. 26 Jun, 2017 1 commit
    • Vicențiu Ciorbaru's avatar
      Fix merge error from 10.0 · 32659db8
      Vicențiu Ciorbaru authored
      Item_func_sysconst behaves as a non-constant function during prepared
      statements and view creation and constant otherwise. Current condition
      implied the opposite.
      32659db8
  11. 23 Jun, 2017 1 commit
  12. 22 Jun, 2017 9 commits
  13. 21 Jun, 2017 1 commit
  14. 20 Jun, 2017 1 commit
  15. 19 Jun, 2017 4 commits