1. 06 Sep, 2021 1 commit
    • Nayuta Yanagisawa's avatar
      MDEV-25684 Crash in THD::find_temporary_table while calling spider_direct_sql... · 1fda0544
      Nayuta Yanagisawa authored
      MDEV-25684 Crash in THD::find_temporary_table while calling spider_direct_sql UDF without temporary table created
      
      The server crashed when SPIDER_DIRECT_SQL UDF was called with
      non-existing temporary table.
      
      The bug has been introduced by 91ffdc83. The commit removed
      the check, from THD::open_temporary_table(), which ensure that
      the target temporary tables exist.
      
      We can fix the bug by adding the check before the call of
      THD::open_temporary_table().
      1fda0544
  2. 04 Sep, 2021 1 commit
    • Vladislav Vaintroub's avatar
      MDEV-26533 MariaDB 10.5 crashes with key_buffer_size > 4Gb on Windows x64 · a1b0f235
      Vladislav Vaintroub authored
      This is a side-effect of my_large_malloc() introduction,MDEV-18851
      
      It removed a cast to size_t to variable 'blocks' in
      multiplication blocks * keycache->key_cache_block_size , creating ulong value
      instead of correct size_t.
      
      
      Replaced a couple of ulongs with appropriate data type, which is size_t.
      
      Also, fixed casts to ulongs in crash handler messages, so that people would
      not be confused by that, too.
      
      Interestingly, aria did not expose the same problem even if it contains
      copied and pasted code in ma_pagecache, because Aria had some ulongs removed
      when fixing a similar problem in MDEV-9256.
      a1b0f235
  3. 02 Sep, 2021 1 commit
    • Vladislav Vaintroub's avatar
      Fix create_background_thd() · e38a05e2
      Vladislav Vaintroub authored
      Allow the caller to have current_thd. Also do not store
      PSI_CALL_get_thread() in the new THD, it is a thread local storage variable
      that can become invalid any time, we do not control the lifetime of the
      caller's thread.
      e38a05e2
  4. 01 Sep, 2021 3 commits
    • Monty's avatar
      Added support for CHECK TABLE for S3 tables · 10f08aff
      Monty authored
      Other things:
      - Don't allocate an IO_CACHE for scanning tables of type BLOCK
        (It was never used in this case)
      - Fixed bug in page cache that cased a hang when trying to read a
        not existing S3 block.
      10f08aff
    • Monty's avatar
      Added support for ANALYZE TABLE to S3 tables · 49ae1996
      Monty authored
      Other things
      - Cleaned up error messages for CHECK, REPAIR and OPTIMIZE
      49ae1996
    • Monty's avatar
      Added options s3_port and s3_use_http to aria_s3_copy · 6bdc03eb
      Monty authored
      These options was needed in some cases, like when using minio that require
      the port option, to be able to connect to the S3 storage.
      The sympthom was that one could get the error
      "Table t1.MAI doesn't exist in s3"
      even if the table did exits.
      
      Other things:
      - Improved error message for non existing S3 files
      6bdc03eb
  5. 31 Aug, 2021 4 commits
  6. 30 Aug, 2021 4 commits
    • Vladislav Vaintroub's avatar
      MDEV-26511 Only allocate Innodb background purge thd, when it is safe. · 1a69e158
      Vladislav Vaintroub authored
      Change logic to only allocate purge thds at startup, or
      in pre-shutdown (for slow shutdown).
      1a69e158
    • Marko Mäkelä's avatar
      MDEV-26504 THD::copy_db_to() fails to return true if THD::db is null · ceb40ef4
      Marko Mäkelä authored
      THD::copy_db_to(): Always return true if the output parameter
      was left uninitialized. This fixes a regression that was caused
      by commit 7d0d934c (MDEV-16473).
      
      MariaDB Server 10.3 and later were unaffected by this bug
      thanks to commit a7e352b5.
      
      Possibly this bug only affects mysql_list_fields()
      in the Embedded Server (libmysqld).
      
      This bug was found by GCC 11.2.0 in CMAKE_BUILD_TYPE=RelWithDebInfo.
      ceb40ef4
    • Marko Mäkelä's avatar
      Fix GCC 11 -Wmaybe-uninitialized for PLUGIN_PERFSCHEMA · fda704c8
      Marko Mäkelä authored
      init_mutex_v1_t: Stop lying that the mutex parameter is const.
      GCC 11.2.0 assumes that it is and could complain about any mysql_mutex_t
      being uninitialized even after mysql_mutex_init() as long as
      PLUGIN_PERFSCHEMA is enabled.
      
      init_rwlock_v1_t, init_cond_v1_t: Remove untruthful const qualifiers.
      
      Note: init_socket_v1_t is expecting that the socket fd has already
      been created before PSI_SOCKET_CALL(init_socket), and therefore that
      parameter really is being treated as a pointer to const.
      fda704c8
    • Marko Mäkelä's avatar
      Update libmariadb · 969edf02
      Marko Mäkelä authored
      969edf02
  7. 29 Aug, 2021 1 commit
    • Sergei Golubchik's avatar
      mtr: fix the check where a combination is pre-selected · 600e4949
      Sergei Golubchik authored
      if all options from a combination from the combinations file are already
      present in the server's list of options, then don't try to run tests
      in other combinations from this file.
      
      old behavior was: if at least one option from a combination is
      already present in the list...
      600e4949
  8. 27 Aug, 2021 1 commit
  9. 26 Aug, 2021 5 commits
    • Sergei Golubchik's avatar
      typo fixed · fe2a7048
      Sergei Golubchik authored
      fe2a7048
    • Daniel Black's avatar
      rocksdb: disable on arm64 except for Linux · 228630f6
      Daniel Black authored
      Thanks to Theodore Brockman on Zulip for noticing
      on an OSX ARM64 and testing this patch.
      
      Per https://github.com/google/cpu_features/pull/150/files
      CMAKE_SYSTEM_PROCESSOR is arm64 on Apple.
      
      Without this, compulation error:
      
      [ 80%] Building CXX object storage/rocksdb/CMakeFiles/rocksdblib.dir/rocksdb/util/crc32c.cc.o
      /mariadb/storage/rocksdb/rocksdb/util/crc32c.cc:500:18: error: use of undeclared identifier 'isSSE42'
        has_fast_crc = isSSE42();
                       ^
      /mariadb/storage/rocksdb/rocksdb/util/crc32c.cc:1230:7: error: use of undeclared identifier 'isSSE42'
        if (isSSE42()) {
            ^
      /mariadb/storage/rocksdb/rocksdb/util/crc32c.cc:1231:9: error: use of undeclared identifier 'isPCLMULQDQ'
          if (isPCLMULQDQ()) {
              ^
      
      This can be reverted when the RocksDB submodule is updated.
      
      https://github.com/facebook/rocksdb/commit/ee4bd4780b321ddb5f92a0f4eb956f2a2ebd60dc
      228630f6
    • Marko Mäkelä's avatar
      Merge 10.4 into 10.5 · 87ff4ba7
      Marko Mäkelä authored
      87ff4ba7
    • Michael Widenius's avatar
      MDEV 22785 Crash with prepared statements and NEXTVAL() · b378ddb3
      Michael Widenius authored
      The problem was that a PREARE followed by a non prepared statement
      using DEFAULT NEXT_VALUE() could change table->next_local to point to
      a not persitent memory aria. The next EXECUTE would then try to use
      the wrong pointer, which could cause a crash.
      Fixed by reseting the pointer to it's old value when doing EXECUTE.
      b378ddb3
    • Michael Widenius's avatar
      Fixed failing maria.repair test · c9851d35
      Michael Widenius authored
      Backported patch from MariaDB 10.6
      The issue was that the using session_mem_used to break a test does not
      guarantee where the test breaks, which gives different results
      depending on the environment or how MariaDB is compield.
      c9851d35
  10. 25 Aug, 2021 9 commits
  11. 24 Aug, 2021 2 commits
  12. 23 Aug, 2021 8 commits