1. 12 Apr, 2022 3 commits
    • Xinyi Hong's avatar
      MDEV-27791: Create a new MyRocks parameter rocksdb_log_dir · 1ac87d6d
      Xinyi Hong authored
      Parameter rocksdb_log_dir specifies the path of MyRocks error logs.
      
      By default, the error logs are stored in the same folder with MyRocks
      redo logs. Being able to put human readable logs in one place and
      machine logs in another place improves usability.
      
      All new code of the whole pull request, including one or several files
      that are either new files or modified ones, are contributed under the
      BSD-new license. I am contributing on behalf of my employer Amazon Web
      Services, Inc.
      1ac87d6d
    • Monty's avatar
      Added scripts/wsrep_sst_backup to .gitignore · ef8d203a
      Monty authored
      ef8d203a
    • Monty's avatar
      MDEV-28074 mysqldump --order-by-size · 22f7190e
      Monty authored
      Author: Erki Aring
      22f7190e
  2. 08 Apr, 2022 1 commit
  3. 06 Apr, 2022 21 commits
  4. 05 Apr, 2022 6 commits
  5. 04 Apr, 2022 9 commits
    • Thirunarayanan Balathandayuthapani's avatar
      MDEV-28237 Assertion `0' failed in row_upd_sec_index_entry on DELETE · db655e13
      Thirunarayanan Balathandayuthapani authored
      - InnoDB bulk insert operation fails to rollback when it detect
      DB_DUPLICATE_KEY error. It leads to orphaned records in primary
      indexes. Consecutive update/delete operation assumes that record
      should exist in secondary index and it leads to failure.
      db655e13
    • Thirunarayanan Balathandayuthapani's avatar
      MDEV-28138 MariaDB Assertion Failed in mtr_buf_t::has_space · b678f881
      Thirunarayanan Balathandayuthapani authored
      - After MDEV-24621, InnoDB does buffer the insert bulk operation
      for all indexes expect spatial one. But it leads to search the
      primary key lookup and it leads to failure. So InnoDB should avoid
      bulk insert when table has spatial index involved.
      b678f881
    • Monty's avatar
      Fixed that mysql_upgrade doesn't give errors about mariadb.sys · c4ebb2bd
      Monty authored
      The reason for this fix was that when I tried to run mysql_upgrade
      at home to update an old 10.5 installation, mysql_upgrade failed
      with warnings about mariadb.sys user not existing.
      
      If the server was started with --skip-grants, there would be no warnings
      from mysql_upgrade, but in some cases running mysql_upgrade again could
      produce new warnings.
      
      The reason for the warnings was that any access of the mysql.user view
      will produce a warning if the mariadb.sys user does not exists.
      
      Fixed with the following changes:
      - Disable warnings about mariadb.sys user not existing
      - Don't overwrite old mariadb.sys entries in tables_priv and global_priv
      - Ensure that tables_priv has an entry for mariadb.sys if the user exists.
        This fixes an issue that tables_priv would not be updated if there
        was a failure directly after global_priv was updated.
      c4ebb2bd
    • Monty's avatar
      Fixed double free issue in events · 09c7f78c
      Monty authored
      Server crashed during shutdown with:
      "corrupted double-linked list"
      when running mysql_upgrade multiple times against the server.
      
      Reason was that db_repostitory could be freed twice.
      09c7f78c
    • Julius Goryavsky's avatar
      MDEV-28204: The tr utility does not work as expected on rsync SST · daed558b
      Julius Goryavsky authored
      This commit contains a fix to use modern syntax for selecting
      character classes in the tr utility options.
      
      Also one of the tests for SST via rsync (galera_sst_rysnc2) is made
      more reliable (to avoid rare failures during automatic testing).
      daed558b
    • Vlad Lesin's avatar
      MDEV-26322 Last binlog file and position are "empty" in mariabackup --prepare output · 6a3545dd
      Vlad Lesin authored
      The issue is caused by 59a0236d commit.
      The initial intention of the commit was to speed up
      "mariabackup --prepare".
      
      The call stack of binlog position reading is the following:
      ▾ trx_rseg_mem_restore
        ▾ trx_rseg_array_init
            ▾ trx_lists_init_at_db_start
                  ▸ srv_start
      Both trx_lists_init_at_db_start() and trx_rseg_mem_restore() contain
      special cases for srv_operation == SRV_OPERATION_RESTORE condition, and
      on this condition only rseg headers are read to parse binlog position.
      Performance impact is not so big.
      
      The solution is to revert 59a0236d.
      6a3545dd
    • Daniel Black's avatar
      MDEV-28231: innodb: format string warning on aix UINT64PFx (ib_id_t) · 7f5a3cd2
      Daniel Black authored
      ib_id_t is a uint64. On AIX this isn't a long long unsigned and to
      prevent the compile warnings and potential wrong type, the UINT64PFx
      defination is corrected.
      
      As INT64PF is unused (last use, xtradb in 10.2), it is removed to
      remove the confusion that INT64PF and UINT64PFx would be different
      types otherwise.
      7f5a3cd2
    • Dmitry Shulga's avatar
      MDEV-28129: MariaDB UAF issue at lex_end_nops(LEX*) · cd56b40f
      Dmitry Shulga authored
      This bug report is not about ASAN Use After Free issue. This bug is
      about missed calling of the method LEX::cleanup_lex_after_parse_error
      that should happen on parse error.
      
      Aforementioned method calls sphead::restore_thd_mem_root to clean up
      resources acquired on processing a stored routine. Particularly,
      the method sp_head::restore_tht_mem_root is called to restore
      an original mem root and reset LEX::sphead into nullptr.
      
      The method LEX::cleanup_lex_after_parse_error is invoked by the macros
      MYSQL_YYABORT. Unfortunately, some rules of grammar for handling
      user variables in SQL use YYABORT instead of MYSQL_YYABORT to handle
      parser errors. As a consequence, in case a statement with setting of
      a user variable is called inside a stored routine, it results in
      assert failure in sp_head destructor.
      
      To fix the issue the macros YYABORT should be replaced by MYSQL_YYABORT
      in those grammar rules that handle assignment of user variables.
      cd56b40f
    • Alexander Barkov's avatar
      Adding a "const" qualifier to arguments of create_func(), create_native() etc · 0ffaf19c
      Alexander Barkov authored
      The "const" qualifier was obviously forgotten.
      
      This change will also simpily fixing of MDEV-27744.
      0ffaf19c