1. 23 Mar, 2022 3 commits
    • Tuukka Pasanen's avatar
      MDEV-28120 Remove false-positive Lintian linking error · 9c57bbda
      Tuukka Pasanen authored
      Lintian uses objdump-command to determine is share object linked against
      C-libary. Compression provider shared objects does not have any symbols
      from C-library they only depend compression library and MariaDB
      libaries. This is false-positive as Lintian error itself is correct as
      shared object does not share any symbols from for example Glibc.
      
      Added overrides suppress Lintian errors:
       * E: mariadb-plugin-provider-bzip2: library-not-linked-against-libc usr/lib/mysql/plugin/provider_bzip2.so
       * E: mariadb-plugin-provider-lz4: library-not-linked-against-libc usr/lib/mysql/plugin/provider_lz4.so
       * E: mariadb-plugin-provider-lzma: library-not-linked-against-libc usr/lib/mysql/plugin/provider_lzma.so
       * E: mariadb-plugin-provider-lzo: library-not-linked-against-libc usr/lib/mysql/plugin/provider_lzo.so
       * E: mariadb-plugin-provider-snappy: library-not-linked-against-libc usr/lib/mysql/plugin/provider_snappy.so
      9c57bbda
    • Tuukka Pasanen's avatar
      MDEV-28135: Add missing conflict and breaks for MariaDB 10.6 · 770f62bf
      Tuukka Pasanen authored
      There is missing conflict and breaks for MariaDB 10.6 which
      can cause upgrading from 10.6 not be clean and end up with
      errors on Debian.
      770f62bf
    • Tuukka Pasanen's avatar
      MDEV-27033: Clean lintian 'extended-description-is-empty' errors · 1960f7b2
      Tuukka Pasanen authored
      Fix Debian lintian errors:
        E: mariadb-plugin-provider-bzip2: extended-description-is-empty
        E: mariadb-plugin-provider-lz4: extended-description-is-empty
        E: mariadb-plugin-provider-lzma: extended-description-is-empty
        E: mariadb-plugin-provider-lzo: extended-description-is-empty
        E: mariadb-plugin-provider-snappy: extended-description-is-empty
      by adding Debian Policy Manual section 3.4 (The description
      of a package) extended descriptions to mariadb-plugin-provide-*
      packages
      1960f7b2
  2. 17 Mar, 2022 1 commit
  3. 15 Mar, 2022 8 commits
    • Marko Mäkelä's avatar
      Merge 10.6 into 10.7 · dc4b7f38
      Marko Mäkelä authored
      dc4b7f38
    • Marko Mäkelä's avatar
      Merge 10.5 into 10.6 · 4ef44cc2
      Marko Mäkelä authored
      4ef44cc2
    • Marko Mäkelä's avatar
      MDEV-27985 buf_flush_freed_pages() causes InnoDB to hang · 73fee39e
      Marko Mäkelä authored
      buf_flush_freed_pages(): Assert that neither buf_pool.mutex
      nor buf_pool.flush_list_mutex are held. Simplify the loops.
      Return the tablespace and the number of pages written or punched.
      
      buf_flush_LRU_list_batch(), buf_do_flush_list_batch():
      Release buf_pool.mutex before invoking buf_flush_space().
      
      buf_flush_list_space(): Acquire the mutexes only after invoking
      buf_flush_freed_pages().
      
      Reviewed by: Thirunarayanan Balathandayuthapani
      73fee39e
    • Marko Mäkelä's avatar
      Fix clang -Wtypedef-redefinition · de4ec44b
      Marko Mäkelä authored
      Include my_global.h before mysql.h so that the latter will not
      redefine my_socket and my_ulonglong.
      
      Fixup for commit 77c184df
      de4ec44b
    • Marko Mäkelä's avatar
      MDEV-25214 Crash in fil_space_t::try_to_close · 00896db1
      Marko Mäkelä authored
      fil_space_t::try_to_close(): Tolerate a tablespace that has no
      data files attached. The function fil_ibd_create() initially
      creates and attaches a tablespace with no files, and invokes
      fil_space_t::add() later.
      
      fil_node_open_file(): After releasing and reacquiring fil_system.mutex,
      check if the file was already opened by another thread. This avoids
      an assertion failure !node->is_open() in fil_node_open_file_low().
      
      These failures were reproduced with the test
      innodb.table_definition_cache_debug and the fix of MDEV-27985.
      00896db1
    • Marko Mäkelä's avatar
      Merge 10.4 into 10.5 · e1246775
      Marko Mäkelä authored
      e1246775
    • Marko Mäkelä's avatar
      Merge 10.3 into 10.4 · 9c6135e8
      Marko Mäkelä authored
      9c6135e8
    • Hugo Wen's avatar
      MDEV-27342: Fix issue of recovery failure using new server id · dafc5fb9
      Hugo Wen authored
      Commit 6c39eaeb made the crash recovery dependent on server_id.
      The crash recovery could fail when restoring a new instance from
      original crashed data directory USING A NEW SERVER ID.
      
      The issue doesn't exist in previous major versions before 10.6.
      
      Root cause is when generating the input XID to be searched in the hash,
      server id is populated with the current server id.
      So if the server id changed when recovering, the XID couldn't be found
      in the hash due to server id doesn't match.
      
      This fix is to use original server id when creating the input XID
      object in function `xarecover_do_commit_or_rollback`.
      
      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.
      dafc5fb9
  4. 14 Mar, 2022 10 commits
    • Thirunarayanan Balathandayuthapani's avatar
      MDEV-28060 Online DDL fails while checking for instant alter condition · 1c43660a
      Thirunarayanan Balathandayuthapani authored
      - InnoDB fails to skip newly created column while checking for
      change column when table is in redundant row format. This issue
      is caused the MDEV-18035 (ccb1acbd)
      1c43660a
    • Marko Mäkelä's avatar
      Merge 10.6 into 10.7 · e67d46e4
      Marko Mäkelä authored
      e67d46e4
    • Marko Mäkelä's avatar
      Merge 10.5 into 10.6 · 572e3430
      Marko Mäkelä authored
      572e3430
    • Marko Mäkelä's avatar
      MDEV-28050: clang -Wtypedef-redefinition when PLUGIN_S3=NO · 258c34f1
      Marko Mäkelä authored
      Let us remove the redundant typedef.
      This problem was revealed by
      commit 77c184df
      258c34f1
    • Marko Mäkelä's avatar
      MDEV-24841: More workarounds · c2146ce7
      Marko Mäkelä authored
      For some reason, the tests of the MemorySanitizer build on 10.5 failed
      with both clang 13 and clang 14 with SIGSEGV. On 10.6 where it worked
      better, some more places to work around were identified.
      c2146ce7
    • Sergei Golubchik's avatar
      mtr: fix --source lines detection · f217c761
      Sergei Golubchik authored
      mysqltest allows leading spaces before `--`, so mtr should too
      f217c761
    • Marko Mäkelä's avatar
      MDEV-24841 Build error with MSAN use-of-uninitialized-value in comp_err · 59359fb4
      Marko Mäkelä authored
      The MemorySanitizer implementation in clang includes some built-in
      instrumentation (interceptors) for GNU libc. In GNU libc 2.33, the
      interface to the stat() family of functions was changed. Until the
      MemorySanitizer interceptors are adjusted, any MSAN code builds
      will act as if that the stat() family of functions failed to initialize
      the struct stat.
      
      A fix was applied in
      https://reviews.llvm.org/rG4e1a6c07052b466a2a1cd0c3ff150e4e89a6d87a
      but it fails to cover the 64-bit variants of the calls.
      
      For now, let us work around the MemorySanitizer bug by defining
      and using the macro MSAN_STAT_WORKAROUND().
      59359fb4
    • Marko Mäkelä's avatar
      MDEV-28049 Error on compiling trx0purge.cc · 3b499679
      Marko Mäkelä authored
      In commit 83212632
      the trx_rseg_latch was instrumented for performance_schema,
      but some acqusitions of rd_lock() were not adjusted.
      Thus, the build would fail on platforms where a futex-based
      rw-lock is not available (SUX_LOCK_GENERIC) unless the code
      was built with cmake -DPLUGIN_PERFSCHEMA=NO.
      3b499679
    • Nayuta Yanagisawa's avatar
      MDEV-27169 Change default values of Spider plugin variables to default values of table variables · 810ed88c
      Nayuta Yanagisawa authored
      Some Spider table options introduces an unnecessary complication to
      Spider settings. For example, the default value of the plugin variable
      spider_auto_increment_mode is -1 (use table value) and the default
      table option value is 0 (normal mode). Thus, the virtual default value
      of the variable is 0. This kind of indirection is confusing.
      
      In order to delete such confusing table options in a future release,
      we first change the default values of some Spider plugin variables
      from -1 (use table value) to the corresponding default table values.
      The default table values are defined in spider_set_connect_info_default().
      
      At the same time, we also deprecate the option value -1 (use table value).
      810ed88c
    • Nayuta Yanagisawa's avatar
      MDEV-27923 Deprecate spider_use_handler · 332c59a2
      Nayuta Yanagisawa authored
      Deprecate the plugin variable spider_use_handler and the corresponding
      table parameters "uhd" and "use_handler".
      
      Passing a Handler statement to data nodes, without converting it to
      SQL sometimes, might improve the performance, while this introduces
      some complication to the implementation.
      
      In the first place, only a few people use Handler statements and the
      performance gain seems not to be very significant. Further, setting
      spider_use_handler > 0 disables the GROUP BY handler. So, we decided
      to deprecate the variable.
      332c59a2
  5. 12 Mar, 2022 4 commits
  6. 11 Mar, 2022 14 commits