1. 26 Mar, 2021 2 commits
    • Marko Mäkelä's avatar
      Merge 10.5 into 10.6 · 356c1496
      Marko Mäkelä authored
      356c1496
    • Marko Mäkelä's avatar
      MDEV-25265: ALTER TABLE...IMPORT TABLESPACE fails after DROP INDEX · 2e67b9f6
      Marko Mäkelä authored
      A side effect of the MDEV-24589 bug fix is that if
      FLUSH TABLE...FOR EXPORT is initiated before the history of an
      earlier DROP INDEX operation has been purged, then the data file
      will contain allocated pages that belonged to the dropped indexes.
      These pages would never be freed after a subsequent IMPORT TABLESPACE.
      
      We will work around this regression by making IMPORT TABLESPACE
      tolerate pages that refer to an unknown index.
      2e67b9f6
  2. 25 Mar, 2021 2 commits
    • Eugene Kosov's avatar
    • Daniel Black's avatar
      MEM_CHECK_DEFINED: replace HAVE_valgrind · bcb9ca41
      Daniel Black authored
      HAVE_valgrind_or_MSAN to HAVE_valgrind was incorrect in
      af784385.
      
      In my_valgrind.h when clang exists (hence no __has_feature(memory_sanitizer),
      and -DWITH_VALGRIND=1, but without memcheck.h, we end up with a MEM_CHECK_DEFINED
      being empty.
      
      If we are also doing a CMAKE_BUILD_TYPE=Debug this results a number of
      [-Werror,-Wunused-variable] errors because MEM_CHECK_DEFINED is empty.
      With MEM_CHECK_DEFINED empty, there becomes no uses of this of the
      fixed field and innodb variables in this patch.
      
      So we stop using HAVE_valgrind as catchall and use the name
      HAVE_CHECK_MEM to indicate that a CHECK_MEM_DEFINED function exists.
      
      Reviewer: Monty
      
      Corrects: af784385
      bcb9ca41
  3. 24 Mar, 2021 2 commits
  4. 23 Mar, 2021 7 commits
    • Vladislav Vaintroub's avatar
      CMake cleanup · cb545f11
      Vladislav Vaintroub authored
      - use FIND_PACKAGE(LIBAIO) to find libaio
      - Use standard CMake conventions in Find{PMEM,URING}.cmake
      - Drop the LIB from LIB{PMEM,URING}_{INCLUDE_DIR,LIBRARIES}
        It is cleaner, and consistent with how other packages are handled in CMake.
        e.g successful FIND_PACKAGE(PMEM) now sets PMEM_FOUND, PMEM_LIBRARIES,
        PMEM_INCLUDE_DIR, not  LIBPMEM_{FOUND,LIBRARIES,INCLUDE_DIR}.
      - Decrease the output. use FIND_PACKAGE with QUIET argument.
      - for Linux packages, either liburing, or libaio is required
        If liburing is installed, libaio does not need to be present   .
        Use FIND_PACKAGE([LIBAIO|URING] REQUIRED) if either library is required.
      cb545f11
    • Marko Mäkelä's avatar
      MDEV-24589 DROP TABLE is not crash-safe · e731a283
      Marko Mäkelä authored
      row_upd_clust_step(): Remove the "trigger" on DELETE SYS_INDEXES
      that would invoke dict_drop_index_tree(). Let us do it on purge.
      
      row_purge_remove_clust_if_poss_low(): Invoke
      dict_drop_index_tree() when purging a delete-marked SYS_INDEXES record.
      e731a283
    • Marko Mäkelä's avatar
      fixup cebf9ee2 · 8b115503
      Marko Mäkelä authored
      8b115503
    • Marko Mäkelä's avatar
      MDEV-15528 fixup: Remove dict_table_open_on_index_id() · 8f23aab0
      Marko Mäkelä authored
      dict_table_open_on_index_id(): Remove. This function was used by
      the background scrubbing, which was removed in
      commit a5584b13.
      8f23aab0
    • Daniel Black's avatar
      purge HAVE_CLOSE_SERVER_SOCK from sql/mysqld.cc · 2e31b2ff
      Daniel Black authored
      When we are testing under valgrind, we should be
      testing the actual code path used in production code.
      
      This optimization of using shutdown did, in pre-2009,
      help purify shutdown quickly. In
      b125770a this magicly
      equated to valgrind, in 2009.
      
      Reviewer: Monty
      2e31b2ff
    • Alexey Bychko's avatar
      fixed typo in postinst script · 11707947
      Alexey Bychko authored
      11707947
    • Alexey Bychko's avatar
      fixed typo in postinst script · df931d88
      Alexey Bychko authored
      df931d88
  5. 22 Mar, 2021 3 commits
  6. 21 Mar, 2021 1 commit
  7. 20 Mar, 2021 12 commits
    • Monty's avatar
      Fix compiler warnings in connect engine · c22e6eed
      Monty authored
      - Removed not used variables
      - Added /* fall through */ to switches
      - Removed not used static variable 'slash' from header file
      - Removed test of fp->field_length >= 0 as it is always true
      c22e6eed
    • Monty's avatar
      Fixed crash with listen_sockets when shutdown and kill was run simultaneously · 93bb755d
      Monty authored
      Problem was that listen_sockets where not properly protected.
      Fixed by adding LOCK_start_thread around closing socket loop.
      
      Other things:
      - Removed not necessary test in close_socket(). With the current code
        'sock' can never be INVALID_SOCKET.
      93bb755d
    • Monty's avatar
      Changed std::vector<MYSQL_SOCKET> listen_sockets to Dynamic_array · d7d10232
      Monty authored
      Main reason for this was there was a crash in shutdown of the server
      in binlog_encryption.encryption_combo-mix and some other tests because
      something in listen_sockets where not initialized. Changing to
      Dynamic_array caused things to work.
      Other reason for removing std::vector was that it is harder to debug,
      and not integrated with DBUG, safemalloc, valgrind or memory
      calculation and cause code explosions (extra code generated for each
      std::vector type used).
      d7d10232
    • Monty's avatar
      Fixed wrong initializations of Dynamic_array · cccc96d6
      Monty authored
      Other things:
      - Added size() function to Dynamic_array()
      cccc96d6
    • Monty's avatar
      Aria: Add transaction id to log of create table · 8f33f49e
      Monty authored
      In the case of a crash directly after a creation of an Aria table,
      Aria recovery would think that the table was from another system and
      require a repair of the table and inform that the table is 'zerofilled".
      This would cause no harm, but was confusing to see when testing atomic
      alter table.
      
      Fixed by logging the create transaction id to the log.
      
      Other things:
      - Added "show table status from sys" to maria_empy_logs. This ensures one
        does not get any zerofill warnings when sys/sys_config is used by other
        tests.
      - aria_chk --describe now prints a warning if the table was moved from
        another system.
      - Logging of truncate (maria_delete_all_rows) is changed to use the
        current trid for the create table.
        This is to ensure that we do not run into the same problem with truncate.
      - Changed back sys_config table to Aria as this patch should fix the
        "zerofill" problem in buildbot.
      - Added scripts/mysql_sys_schema.sql to .gitignore
      8f33f49e
    • Marko Mäkelä's avatar
      Merge 10.5 into 10.6 · 1055cf96
      Marko Mäkelä authored
      1055cf96
    • Marko Mäkelä's avatar
      CMake cleanup: Make WITH_URING, WITH_PMEM Boolean · e8113f75
      Marko Mäkelä authored
      The new default values WITH_URING:BOOL=OFF, WITH_PMEM:BOOL=OFF imply
      that the dependencies are optional.
      An explicit request WITH_URING=ON or WITH_PMEM=ON will cause the
      build to fail if the requested dependencies are not available.
      
      Last, to prevent a feature to be built in even though the built-time
      dependencies are available, the following can be used:
      
      cmake -DCMAKE_DISABLE_FIND_PACKAGE_URING=1
      cmake -DCMAKE_DISABLE_FIND_PACKAGE_PMEM=1
      
      This cleanup was suggested by Vladislav Vaintroub.
      e8113f75
    • Marko Mäkelä's avatar
      MDEV-25211 Remove useless counter Innodb_buffered_aio_submitted · e7ddf466
      Marko Mäkelä authored
      In commit 412533b4 (MDEV-18582),
      one of the counters that was ported from XtraDB is useless.
      Innodb_buffered_aio_submitted would be 0 or 1, depending on whether
      is_linux_native_aio_supported() was executed to the point where
      it would be incremented.
      
      Let us remove this counter, because it has no practical value.
      Even if its value were 1, io_setup() can still fail and we may
      end up with innodb_use_native_aio=0.
      e7ddf466
    • Marko Mäkelä's avatar
      Merge 10.4 into 10.5 · 8570a6a0
      Marko Mäkelä authored
      8570a6a0
    • Marko Mäkelä's avatar
      Merge 10.3 into 10.4 · d8dc8537
      Marko Mäkelä authored
      d8dc8537
    • David Carlier's avatar
      mariabackup little FreeBSD update support. · 1bacab8a
      David Carlier authored
      In this platform, it s better not to rely on optional proc filesystem presence.
       Using native API to retrieve binary absolute path instead.
      1bacab8a
    • Daniel Black's avatar
      MDEV-25207 mysql_install_db doesn't create sys schema (fix) · 4eeea4e2
      Daniel Black authored
      Fix for out-of-tree builds.
      
      mysql_sys_schema.sql is a CMAKE_CURRENT_BINARY_DIR file so
      use the buildpkgdatadir.
      4eeea4e2
  8. 19 Mar, 2021 11 commits