1. 22 Aug, 2022 1 commit
    • Brad Smith's avatar
      Revert aligned_alloc() addition from MDEV-28836 · f02ca429
      Brad Smith authored
      As pointed out with MDEV-29308 there are issues with the code as is.
      MariaDB is built as C++11 / C99. aligned_alloc() is not guarenteed
      to be exposed when building with any mode other than C++17 / C11.
      The other *BSD's have their stdlib.h header to expose the function
      with C+11 anyway, but the issue exists in the C99 code too, the
      build just does not use -Werror. Linux globally defines _GNU_SOURCE
      hiding the issue as well.
      f02ca429
  2. 19 Aug, 2022 3 commits
    • Thirunarayanan Balathandayuthapani's avatar
      MDEV-29250 InnoDB: Failing assertion: table->get_ref_count() == 0 · 7624bf86
      Thirunarayanan Balathandayuthapani authored
      Reason:
      ======
       This issue is caused by race condition between fulltext DDL and
      purge thread. DDL sets the signal to stop the purge thread to
      process the new undo log records and wait for the ongoing
      processed FTS table undo log records to finish.
      
      But in dict_acquire_mdl_shared(),InnoDB release all innodb
      table related locks before acquiring the mdl. At the same time,
      DDL assumes that there are no purge threads working on fts table.
      
      There is a possiblity that purge thread can skip processing the
      valid undo log records if it checks purge_sys.must_wait_FTS() twice
      in different places.
      
      Solution:
      ==========
      
      Add the purge_sys.must_wait_FTS() check in dict_acquire_mdl_shared()
      to avoid the purge thread processing undo log records.
      
      dict_open_table_on_id(): return -1 if the purge thread has to
      wait
      
      dict_acquire_mdl_shared(): Added 1 new parameters to indicate that
      purge thread invoking the function, return -1  if the purge
      thread has to wait.
      7624bf86
    • Marko Mäkelä's avatar
      75c416d3
    • Marko Mäkelä's avatar
      c2df3d30
  3. 18 Aug, 2022 1 commit
    • Marko Mäkelä's avatar
      MDEV-29321 Percona XtraDB 5.7 can't be upgrade to MariaDB 10.6 or above · ec379066
      Marko Mäkelä authored
      In MySQL 5.7, rollback segments 1 to 32 are used for temporary tables,
      which is an unnecessary file format change from MySQL 5.6.
      This format change was avoided in MariaDB Server by
      commit 124bae08 (MDEV-12289).
      
      An upgrade from MySQL 5.7 would crash due to dereferencing a null pointer,
      which is a regression due to
      commit 0b47c126 (MDEV-13542).
      
      trx_rseg_t::get(): Return nullptr if no tablespace exists. This is where
      the upgrade would crash.
      
      trx_rseg_mem_restore(): Return DB_TABLESPACE_NOT_FOUND if the
      undo tablespace does not exist. This is likely dead code.
      ec379066
  4. 16 Aug, 2022 1 commit
  5. 15 Aug, 2022 4 commits
  6. 13 Aug, 2022 1 commit
    • qggcs's avatar
      MDEV-29264: JSON function overflow error based on LONGTEXT field · 82017511
      qggcs authored
      Analysis: The JSON functions(JSON_ARRAY[OBJECT|ARRAY_APPEND|ARRAY_INSERT|INSERT|SET|REPLACE]) result is truncated when the function is called based on LONGTEXT field. The overflow occurs when computing the result length due to the LONGTEXT max length is same as uint32 max length. It lead to wrong result length.
      Fix: Add static_cast<ulonglong> to avoid uint32 overflow and fix the arguments used.
      82017511
  7. 10 Aug, 2022 11 commits
  8. 09 Aug, 2022 3 commits
  9. 08 Aug, 2022 4 commits
  10. 05 Aug, 2022 2 commits
    • Marko Mäkelä's avatar
      MDEV-13542 fixup: Improve a recovery error message · c9803504
      Marko Mäkelä authored
      A message used to say "failed to read or decrypt"
      but the "or decrypt" part was removed in
      commit 0b47c126
      without adjusting rarely needed error message suppressions in some
      encryption tests.
      
      Let us improve the error message so that it mentions the file name,
      and adjust all error message suppressions in tests.
      
      Thanks to Oleksandr Byelkin for noticing one test failure.
      c9803504
    • Oleksandr Byelkin's avatar
      fix tests · 5dc86050
      Oleksandr Byelkin authored
      5dc86050
  11. 04 Aug, 2022 9 commits