1. 28 Jun, 2018 4 commits
    • Andrei Elkin's avatar
      MDEV-14014 Multi-Slave Replication Fail: bogus data in log event · 8ca18294
      Andrei Elkin authored
      MDEV-7257 made a dump thread to read from binlog concurrently with
      writers as long as the read bytes are below a water-mark
      (MYSQL_BIN_LOG::binlog_end_pos). However it appeared to be possible a
      dump thread reader reach out for bytes past the water mark through a
      feature of IO_CACHE that fills in the internal buffer and while doing
      so it could read what the reader is not supposed to see (the bytes
      above MYSQL_BIN_LOG::binlog_end_pos).
      
      The issue is fixed with constraining the IO_CACHE buffer fill to respect
      the watermark.
      
      An added unit test proves reading from file is bound to an external
      parameter
      passed to {IO_CACHE::end_of_file} cache member.
      8ca18294
    • Sergei Golubchik's avatar
      mark ed25519 stable · 16c14d7b
      Sergei Golubchik authored
      16c14d7b
    • Sergei Golubchik's avatar
      Merge branch '10.0' into 10.1 · 44d1cada
      Sergei Golubchik authored
      44d1cada
    • Sergei Golubchik's avatar
      remove double-counting · 3d4beee1
      Sergei Golubchik authored
      rnd_pos_by_record calls ha_rnd_pos, which does the counting
      3d4beee1
  2. 27 Jun, 2018 2 commits
    • Sergey Vojtovich's avatar
      MDEV-8540 - Crash on server shutdown since 10.0.16 · bf4244d1
      Sergey Vojtovich authored
      Only close stdin if it was open initinally. Otherwise we may close file
      descriptor which is reused for different puprose (specifically for binlog
      index file in case of this bug).
      bf4244d1
    • Jan Lindström's avatar
      MDEV-15607: mysqld crashed few after node is being joined with sst · be569826
      Jan Lindström authored
      This is a typical systemd response where it tries to shutdown the
      joiner (due to "timeout") before the joiner manages to complete SST.
      
      wsrep_sst_wait
      wsrep_SE_init_wait
      	While waiting the operation to finish use mysql_cond_timedwait
      	instead of mysql_cond_wait and if operation is not finished
      	extend systemd timeout (if needed).
      be569826
  3. 26 Jun, 2018 4 commits
  4. 25 Jun, 2018 1 commit
    • Andrei Elkin's avatar
      MDEV-15242 Poor RBR update performance with partitioned tables · 28e1f145
      Andrei Elkin authored
      Observed and described
      partitioned engine execution time difference
      between master and slave was caused by excessive invocation
      of base_engine::rnd_init which was done also for partitions
      uninvolved into Rows-event operation.
      The bug's slave slowdown therefore scales with the number of partitions.
      
      Fixed with applying an upstream patch.
      
      References:
      ----------
      https://bugs.mysql.com/bug.php?id=73648
      Bug#25687813 REPLICATION REGRESSION WITH RBR AND PARTITIONED TABLES
      28e1f145
  5. 24 Jun, 2018 1 commit
  6. 21 Jun, 2018 1 commit
  7. 20 Jun, 2018 8 commits
  8. 19 Jun, 2018 5 commits
  9. 18 Jun, 2018 1 commit
  10. 15 Jun, 2018 5 commits
  11. 14 Jun, 2018 4 commits
    • Sergei Golubchik's avatar
      fix galera sst tests · c22ab56f
      Sergei Golubchik authored
      note that ${A#foo} is $A if there's no prefix foo. That's why
      galera nodes tried to connect to 127.0.0.1:127.0.0.1 if there was
      no port in the address
      
      Followup for 2b35db5a
      c22ab56f
    • Sergei Golubchik's avatar
      fix compilation w/o partitioning · 776fc876
      Sergei Golubchik authored
      followup for d8da9202
      776fc876
    • Sergei Golubchik's avatar
      Merge branch '10.0' into 10.1 · 5d6b7f46
      Sergei Golubchik authored
      5d6b7f46
    • Marko Mäkelä's avatar
      MDEV-13103 Deal with page_compressed page corruption · f5eb3712
      Marko Mäkelä authored
      fil_page_decompress(): Replaces fil_decompress_page().
      Allow the caller detect errors. Remove
      duplicated code. Use the "safe" instead of "fast" variants of
      decompression routines.
      
      fil_page_compress(): Replaces fil_compress_page().
      The length of the input buffer always was srv_page_size (innodb_page_size).
      Remove printouts, and remove the fil_space_t* parameter.
      
      buf_tmp_buffer_t::reserved: Make private; the accessors acquire()
      and release() will use atomic memory access.
      
      buf_pool_reserve_tmp_slot(): Make static. Remove the second parameter.
      Do not acquire any mutex. Remove the allocation of the buffers.
      
      buf_tmp_reserve_crypt_buf(), buf_tmp_reserve_compression_buf():
      Refactored away from buf_pool_reserve_tmp_slot().
      
      buf_page_decrypt_after_read(): Make static, and simplify the logic.
      Use the encryption buffer also for decompressing.
      
      buf_page_io_complete(), buf_dblwr_process(): Check more failures.
      
      fil_space_encrypt(): Simplify the debug checks.
      
      fil_space_t::printed_compression_failure: Remove.
      
      fil_get_compression_alg_name(): Remove.
      
      fil_iterate(): Allocate a buffer for compression and decompression
      only once, instead of allocating and freeing it for every page
      that uses compression, during IMPORT TABLESPACE.
      
      fil_node_get_space_id(), fil_page_is_index_page(),
      fil_page_is_lzo_compressed(): Remove (unused code).
      f5eb3712
  12. 13 Jun, 2018 4 commits