1. 12 Jul, 2023 1 commit
    • Tuukka Pasanen's avatar
      MDEV-30843: Add Extended descriptions to compat packages · 51a85e7e
      Tuukka Pasanen authored
      Currently Debian package: mariadb-client-compat and
      mariadb-server-compat are missing Extended description
      which leads to Lintian error:
       * extended-description-is-empty
      
      Commit orders Description to same as rest of
      the Debian control file does.
      
      Commit also fix Debian Lintian error:
       * obsolete-relation-form-in-source
      51a85e7e
  2. 11 Jul, 2023 1 commit
  3. 05 Jul, 2023 1 commit
    • Marko Mäkelä's avatar
      MDEV-31443 [FATAL] InnoDB: Unable to find charset-collation in ibuf_upgrade() · 313c5a1d
      Marko Mäkelä authored
      dtype_new_read_for_order_and_null_size(): Correctly assign type->prtype.
      This caused the fatal error and crash.
      
      ibuf_merge(): Relax a too strict condition that would result in
      [ERROR] InnoDB: Unable to upgrade the change buffer
      when there exist buffered changes to redundant secondary indexes, such as
      PRIMARY KEY(x), INDEX(x).
      
      ibuf_upgrade(): Modify at most one user tablespace per mini-transaction,
      to be crash-safe.
      
      page_cur_insert_rec_zip(), page_cur_delete_rec(): Relax debug assertions
      for ibuf_upgrade().
      
      ibuf_log_rebuild_if_needed(): Invoke recv_sys.debug_free() only after
      srv_log_rebuild_if_needed() to avoid an assertion failure. This code
      is executed when the innodb_log_file_size is changed when upgrading
      from 10.x to 11.0.
      
      Tested by: Matthias Leich, Christian Hesse
      313c5a1d
  4. 04 Jul, 2023 4 commits
  5. 03 Jul, 2023 4 commits
  6. 02 Jul, 2023 2 commits
  7. 30 Jun, 2023 3 commits
    • Marko Mäkelä's avatar
      MDEV-31559 btr_search_hash_table_validate() does not check if CHECK TABLE is killed · 3d901438
      Marko Mäkelä authored
      btr_search_hash_table_validate(), btr_search_validate(): Add the
      parameter THD for checking if the statement has been killed.
      Any non-QUICK CHECK TABLE will validate the entire adaptive hash index
      for all InnoDB tables, which may be extremely slow when running
      multiple concurrent CHECK TABLE.
      3d901438
    • Marko Mäkelä's avatar
      Merge 10.6 into 10.9 · d04de1aa
      Marko Mäkelä authored
      d04de1aa
    • Oleg Smirnov's avatar
      MDEV-30639 Upgrade to 10.8 and later does not work on Windows · 6d911219
      Oleg Smirnov authored
      During the upgrade procedure on Windows mysqld.exe is started with
      the named pipe connection protocol. mysqladmin.exe then pings the
      server to check if is up and running. Command line looks like:
         mysqladmin.exe --protocol=pipe --socket=mysql_upgrade_service_xxx ping
      But the "socket" parameter resets the "protocol" which was previously
      initialized with the "pipe" value, setting it to "socket".
      As a result, connection cannot be established and the upgrade
      procedure fails.
      "socket" in Windows is used to pass the name of the pipe so resetting
      the protocol is not valid in this case.
      
      This commit fixes resetting of the "protocol" parameter with "socket"
      parameter in the case when protocol has been previously initialized
      to "pipe" value
      6d911219
  8. 29 Jun, 2023 1 commit
    • Oleg Smirnov's avatar
      MDEV-30639 Upgrade to 10.8 and later does not work on Windows · 8e2b20bf
      Oleg Smirnov authored
      During the upgrade procedure on Windows mysqld.exe is started with
      the named pipe connection protocol. mysqladmin.exe then pings the
      server to check if is up and running. Command line looks like:
         mysqladmin.exe --protocol=pipe --socket=mysql_upgrade_service_xxx ping
      But the "socket" parameter resets the "protocol" which was previously
      initialized with the "pipe" value, setting it to "socket".
      As a result, connection cannot be established and the upgrade
      procedure fails.
      "socket" in Windows is used to pass the name of the pipe so resetting
      the protocol is not valid in this case.
      
      This commit fixes resetting of the "protocol" parameter with "socket"
      parameter in the case when protocol has been previously initialized
      to "pipe" value
      8e2b20bf
  9. 28 Jun, 2023 6 commits
    • Sergei Petrunia's avatar
      MDEV-31573: rocksdb.group_min_max test fails · cd39f4ab
      Sergei Petrunia authored
      Set the histogram_type to be DOUBLE_PREC_HB as
      it originally was.
      cd39f4ab
    • Vlad Lesin's avatar
      MDEV-31570 gap_lock_split.test hangs sporadically · 3e89b4fc
      Vlad Lesin authored
      The fix is in replacing the waiting for the whole purge finishing
      with the the waiting for only delete-marked records purging finishing.
      
      Reviewed by: Marko Mäkelä
      3e89b4fc
    • Thirunarayanan Balathandayuthapani's avatar
      MDEV-31537 Bulk insert operation aborts the server for redundant table · 73f78fb3
      Thirunarayanan Balathandayuthapani authored
      - InnoDB bulk insert operation aborts the server for redundant
      table. InnoDB miscalculates the record size in temporary file
      for the redundant table. CHAR in redundant row format table
      always fixed length, but in temporary file, it is variable-length
      for variable-length character sets.
      73f78fb3
    • Vlad Lesin's avatar
      MDEV-30648 btr_estimate_n_rows_in_range() accesses unfixed, unlatched page · 687fd6be
      Vlad Lesin authored
      The issue is caused by MDEV-30400 fix.
      
      There are two cursors in btr_estimate_n_rows_in_range() - p1 and p2, but
      both share the same mtr. Each cursor contains mtr savepoint for the
      previously fetched block to release it then the current block is
      fetched.
      
      Before MDEV-30400 the block was released with
      mtr_t::release_block_at_savepoint(), it just unfixed a block and
      released its page patch. In MDEV-30400 it was replaced with
      mtr_t::rollback_to_savepoint(), which does the same as the former
      mtr_t::release_block_at_savepoint(ulint begin, ulint end) but also
      erases the corresponding slots from mtr memo, what invalidates any
      stored mtr's memo savepoints, greater or equal to "begin".
      
      The idea of the fix is to get rid of savepoints at all in
      btr_estimate_n_rows_in_range() and
      btr_estimate_n_rows_in_range_on_level(). As
      mtr_t::rollback_to_savepoint() erases elements from mtr_t::m_memo, we
      know what element of mtr_t::m_memo can be deleted on the certain case,
      so there is no need to store savepoints.
      
      See also the following slides for details:
      https://docs.google.com/presentation/d/1RFYBo7EUhM22ab3GOYctv3j_3yC0vHtBY9auObZec8U
      
      Reviewed by: Marko Mäkelä
      687fd6be
    • Marko Mäkelä's avatar
      Merge 10.11 into 11.0 · 1fe4bcbe
      Marko Mäkelä authored
      1fe4bcbe
    • Yuchen Pei's avatar
      MDEV-31463 Spider should check connection before setting lock wait timeout · 5ef27d27
      Yuchen Pei authored
      When setting the server lockwait timeout, spider should do some basic
      checks first, like whether the remote server is still reachable. So
      instead of directly calling spider_db_mbase::exec_query(), it should
      call spider_db_query().
      
      The reset of the lock wait timeout does not need to do such checks,
      because they happen after the successfully setting the lock wait
      timeout, implying the checks have been passed already.
      5ef27d27
  10. 27 Jun, 2023 5 commits
  11. 26 Jun, 2023 3 commits
  12. 25 Jun, 2023 9 commits