1. 02 Jul, 2021 6 commits
  2. 30 Jun, 2021 3 commits
    • Sergei Petrunia's avatar
      4a6e2d34
    • Sergei Petrunia's avatar
      Merge 10.2->10.3 · 586870f9
      Sergei Petrunia authored
      586870f9
    • Sergei Petrunia's avatar
      MDEV-25969: Condition pushdown into derived table doesn't work if select list uses SP · eb20c91b
      Sergei Petrunia authored
      Consider a query of the form:
      
        select ... from (select item2 as COL1) as T where COL1=123
      
      Condition pushdown into derived table will try to push "COL1=123" condition
      down into table T.
      The process of pushdown involves "substituting" the item, that is,
      replacing Item_field("T.COL1") with its "producing item" item2.
      In order to use item2, one needs to clone it (call Item::build_clone).
      
      If the item is not cloneable (e.g. Item_func_sp is not), the pushdown
      process will fail and nothing at all will be pushed.
      
      Fixed by introducing transform_condition_or_part() which will try to apply
      the transformation for as many parts of condition as possible. The parts of
      condition that couldn't be transformed are dropped.
      eb20c91b
  3. 29 Jun, 2021 2 commits
  4. 28 Jun, 2021 1 commit
  5. 27 Jun, 2021 1 commit
  6. 26 Jun, 2021 2 commits
    • Igor Babaev's avatar
      8b3f816c
    • Igor Babaev's avatar
      MDEV-20411 Procedure containing CTE incorrectly stored in mysql.proc · 12c80df4
      Igor Babaev authored
      If the first token of the body of a stored procedure was 'WITH' then
      the beginning of the body was determined incorrectly and that token was
      missing in the string representing the body of the SP in mysql.proc. As a
      resultnany call of such procedure failed as the string representing the
      body could not be parsed.
      
      The patch corrects the code of the functions get_tok_start() and
      get_cpp_tok_start() of the class Lex_input_stream to make them take into
      account look ahead tokens. The patch is needed only for 10.2 as this
      problem has neen resolved in 10.3+.
      12c80df4
  7. 25 Jun, 2021 3 commits
  8. 23 Jun, 2021 4 commits
  9. 22 Jun, 2021 5 commits
    • Alexey Bychko's avatar
      MDEV-25960 yum update overwrites customized logrotation config (/etc/logrotate.d/mysql) · aaaed9ba
      Alexey Bychko authored
      added %config directive to /etc/logrotate.d/mysql and put it to server
      package. if file is edited by customer and defaults are changed - new
      .rpmnew file with defaults will be created next to old one.
      aaaed9ba
    • Marko Mäkelä's avatar
      MDEV-25981 InnoDB upgrade fails · 35a9aaeb
      Marko Mäkelä authored
      trx_undo_mem_create_at_db_start(): Relax too strict upgrade checks
      that were introduced in
      commit e46f76c9 (MDEV-15912).
      On commit, pages will typically be set to TRX_UNDO_CACHED state.
      Having the type TRX_UNDO_INSERT in such pages is common and
      unproblematic; the type would be reset in trx_undo_reuse_cached().
      
      trx_rseg_array_init(): On failure, clean up the rollback segments
      that were initialized so far, to avoid an assertion failure later
      during shutdown.
      35a9aaeb
    • Marko Mäkelä's avatar
      Merge 10.2 into 10.3 · e07f0a2d
      Marko Mäkelä authored
      e07f0a2d
    • Marko Mäkelä's avatar
      MDEV-25982 Upgrade of MariaDB 10.1 log crashes due to missing encryption key · 19716ad5
      Marko Mäkelä authored
      init_crypt_key(): On failure, set info->key_version to
      ENCRYPTION_KEY_VERSION_INVALID.
      
      log_crypt_101_read_block(): Refuse to attempt decryption if
      info->key_version is ENCRYPTION_KEY_VERSION_INVALID.
      19716ad5
    • Igor Babaev's avatar
      MDEV-25679 Wrong result selecting from simple view with LIMIT and ORDER BY · 6e94ef41
      Igor Babaev authored
      This bug affected queries with views / derived_tables / CTEs whose
      specifications were of the form
        (SELECT ... LIMIT <n>) ORDER BY ...
      Units representing such specifications contains one SELECT_LEX structure
      for (SELECT ... LIMIT <n>) and additionally SELECT_LEX structure for
      fake_select_lex. This fact should have been taken into account in the
      function mysql_derived_fill().
      
      This patch has to be applied to 10.2 and 10.3 only.
      6e94ef41
  10. 21 Jun, 2021 6 commits
    • Igor Babaev's avatar
      MDEV-25679 Wrong result selecting from simple view with LIMIT and ORDER BY · cc0bd843
      Igor Babaev authored
      This bug affected queries with views / derived_tables / CTEs whose
      specifications were of the form
        (SELECT ... LIMIT <n>) ORDER BY ...
      Units representing such specifications contains one SELECT_LEX structure
      for (SELECT ... LIMIT <n>) and additionally SELECT_LEX structure for
      fake_select_lex. This fact should have been taken into account in the
      function mysql_derived_fill().
      
      This patch has to be applied to 10.2 and 10.3 only.
      cc0bd843
    • Marko Mäkelä's avatar
      MDEV-25979 Invalid page number written to DB_ROLL_PTR · 9dc50ea2
      Marko Mäkelä authored
      trx_undo_report_row_operation(): Fix a race condition that was introduced
      in commit f74023b9 (MDEV-15090).
      We must not access undo_block after the page latch has been released
      in mtr_t::commit(), because the block could be evicted or replaced.
      9dc50ea2
    • Marko Mäkelä's avatar
      MDEV-15912: Remove traces of insert_undo · e46f76c9
      Marko Mäkelä authored
      Let us simply refuse an upgrade from earlier versions if the
      upgrade procedure was not followed. This simplifies the purge,
      commit, and rollback of transactions.
      
      Before upgrading to MariaDB 10.3 or later, a clean shutdown
      of the server (with innodb_fast_shutdown=1 or 0) is necessary,
      to ensure that any incomplete transactions are rolled back.
      The undo log format was changed in MDEV-12288. There is only
      one persistent undo log for each transaction.
      e46f76c9
    • Marko Mäkelä's avatar
      After-merge fixes for MDEV-14180 · 241d30d3
      Marko Mäkelä authored
      241d30d3
    • Marko Mäkelä's avatar
      Merge 10.2 into 10.3 · c9a85fb1
      Marko Mäkelä authored
      c9a85fb1
    • Marko Mäkelä's avatar
      Remove Travis CI status · 773a07b6
      Marko Mäkelä authored
      Builds on travis-ci.org ceased on 2021-06-15.
      773a07b6
  11. 18 Jun, 2021 2 commits
    • Sergei Golubchik's avatar
      fix spider tests for --ps · 068246c0
      Sergei Golubchik authored
      spider tests use
      
      --let $var= many;sql;statements
      --eval $var
      
      and this doesn't work in ps
      068246c0
    • Sergei Golubchik's avatar
      spider tests aren't big · a5f6eca5
      Sergei Golubchik authored
      and *never* disable tests in suite.pm based on $::opt_big_test,
      this will make the test skipped both as too big (for ./mtr)
      and as too small (for ./mtr --big --big).
      a5f6eca5
  12. 17 Jun, 2021 1 commit
  13. 16 Jun, 2021 2 commits
  14. 15 Jun, 2021 2 commits
    • Julius Goryavsky's avatar
      MDEV-25880 part 2: Improving reliability of the SST scripts · 2edb8e12
      Julius Goryavsky authored
      Additional improvements aimed at improving operational
      reliability of the SST scripts:
      
      1) Script need to give rsync and stunnel a short time to
         terminate after "kill -9" before the first PID check
         using ps utility;
      2) The temporary file used to create the binlog index could
         sometimes remain in the data directory if tar failed and
         then may be reused without being cleaned up (the next
         time when SST was run) - now it's fixed;
      3) The temporary file used to build the binlog index is now
         created using mktemp and, if this variable is present in
         the configuration file, in tmpdir;
      4) Checking the secret tag in SST via rsync is made faster
         and does not require creating a temporary file, which
         could remain in the data directory in case of failure;
      5) Added "-F" option to grep to check the tag when using
         mariabackup/xtrabackup-v2 - to avoid possible collisions
         in case of special characters in the tag value (unlikely
         scenario, but the new check is more reliable).
      2edb8e12
    • Julius Goryavsky's avatar
      MDEV-25880: rsync may be mistakenly killed when overlapping SST · 18d5be5b
      Julius Goryavsky authored
      This commit fixes a bug was originally discovered during the
      galera_nbo_sst_slave mtr test for 10.6 branch. However it is
      relevant for all versions and can lead to intermittent SST
      crashes via rsync on very fast server restarts - when a new
      SST process (for example, after starting a new server instance)
      overlaps the old SST process started by the previous, already
      terminated server. This overlap can result in the new rsync
      being killed instead of the old rsync, or the pid file from
      the new rsync being killed, which then lead to problems.
      18d5be5b