1. 21 Jan, 2020 4 commits
  2. 20 Jan, 2020 10 commits
  3. 19 Jan, 2020 2 commits
  4. 18 Jan, 2020 4 commits
  5. 17 Jan, 2020 16 commits
    • Sergei Golubchik's avatar
      MDEV-20205 mysql_install_db shouldn't execute chown · 51a95712
      Sergei Golubchik authored
      Make chown error non-fatal. Just print a warning.
      51a95712
    • Sergei Golubchik's avatar
      rpm/deb and auth_pam_tool_dir/auth_pam_tool · 9d18b624
      Sergei Golubchik authored
      don't let mysql_install_db set SUID bit for auth_pam_tool in rpm/deb
      packages - instead package files with correct permissions and
      only fix the ownership of auth_pam_tool_dir (which can only be done
      after mysql user is created, so in post-install).
      
      keep old mysql_install_db behavior for bintars
      9d18b624
    • Sergei Golubchik's avatar
      restore support for --defaults-file=<(...) · 744d545f
      Sergei Golubchik authored
      if my_realpath() fails, don't return the error code, get_defaults_options()
      returns a number of options consumed, not 0=ok/1=error.
      
      instead, ignore the error from my_realpath. If it fails it internally
      falls back to my_load_path, which restores 10.4- behavior
      744d545f
    • Sergei Golubchik's avatar
      cleanup: remove unused arguments · 8bcbdaf7
      Sergei Golubchik authored
      8bcbdaf7
    • Sergei Petrunia's avatar
      Fix a merge typo · d595a91b
      Sergei Petrunia authored
      d595a91b
    • Marko Mäkelä's avatar
      7b70cbd8
    • Nikša Skeledžija's avatar
      Bug #30499288 - GCC 9.2.1 REPORTS A NEW WARNING FOR OS_FILE_GET_PARENT_DIR · c25a0662
      Nikša Skeledžija authored
      - Fixed a warning visible in optimized build related to calling
      memcpy with length parameters larger than ptrdiff_t max.
      
      rb#23333 approved by Annamalai Gurusami <annamalai.gurusami@oracle.com>
      c25a0662
    • Marko Mäkelä's avatar
      MDEV-21513: Avoid some crashes in ALTER TABLE...IMPORT TABLESPACE · 08b0b2b6
      Marko Mäkelä authored
      IndexPurge::next(): Replace btr_pcur_move_to_next_user_rec()
      with some equivalent code that performs sanity checks without
      killing the server. Perform some additional sanity checks as well.
      
      This change is motivated by
      mysql/mysql-server@48de4d74f4d2f10cd01b129753c7dfa908cf36b5
      which unnecessarily introduces storage overhead to btr_pcur_t
      and uses a test case that injects a fault somewhere else,
      not in the code path that was modified.
      08b0b2b6
    • Marko Mäkelä's avatar
      MDEV-21512 InnoDB may hang due to SPATIAL INDEX · 457ce97e
      Marko Mäkelä authored
      MySQL 5.7.29 includes the following fix:
      Bug #30287668 INNODB: A LONG SEMAPHORE WAIT
      mysql/mysql-server@5cdbb22b51cf2b35dbdf5666a251ffbec2f84dec
      
      There is no test case. It seems that the problem could occur when
      a spatial index is large and peculiar enough so that multiple R-tree
      leaf pages will have the exactly same maximum bounding rectangle (MBR).
      
      The commit message suggests that the hang can occur when R-tree
      non-leaf pages are being merged, which should only be possible
      during transaction rollback or the purge of transaction history,
      when the R-tree index is at least 2 levels high and very many records
      are being deleted. The message says that a comparison result that two
      spatial index node pointer records are equal will cause an infinite loop
      in rtr_page_copy_rec_list_end_no_locks(). Hence, we must include the
      child page number in the comparison to be consistent with
      mysql/mysql-server@2e11fe0e152e34d73579e1a9ec19aedc3f6010f6.
      
      We fix this bug in a simpler way, involving fewer code changes.
      
      cmp_rec_rec(): Renamed from cmp_rec_rec_with_match().
      Assert that rec2 always resides in an index page.
      Treat non-leaf spatial index pages specially.
      457ce97e
    • Marko Mäkelä's avatar
      MDEV-21511: Remove unnecessary code · c3695b40
      Marko Mäkelä authored
      Now that we will be invoking dtuple_get_n_ext() instead of
      letting btr_push_update_extern_fields() update an already
      calculated value, it is unnecessary to calculate the n_ext
      upfront.
      
      row_rec_to_index_entry(), row_rec_to_index_entry_low():
      Remove the output parameter n_ext.
      c3695b40
    • Marko Mäkelä's avatar
      MDEV-21511 Wrong estimate of affected BLOB columns in update · 5838b527
      Marko Mäkelä authored
      During update, rollback, or MVCC read, we may miscalculate
      the number of off-page columns, and thus the size of the
      clustered index record. The function btr_push_update_extern_fields()
      is mostly redundant, because the off-page columns would also be
      moved by row_upd_index_replace_new_col_val(), which is invoked
      via row_upd_index_replace_new_col_vals().
      
      btr_push_update_extern_fields(): Remove.
      
      This is based on
      mysql/mysql-server@1fa475b85d24de4b9ce2958c0eed738c221fc82c
      which refines a fix for a recovery bug fix
      mysql/mysql-server@ce0a1e85e24e48b8171f767b44330da635a6ea0a
      in MySQL 5.7.5.
      
      No test case was provided by Oracle.
      Some of the changed code is being covered by the existing test
      innodb.blob-crash.
      5838b527
    • Marko Mäkelä's avatar
      MDEV-21509 Possible hang during purge of history, or rollback · 3e38d155
      Marko Mäkelä authored
      WL#6326 in MariaDB 10.2.2 introduced a potential hang on purge or rollback
      when an index tree is being shrunk by multiple levels.
      
      This fix is based on
      mysql/mysql-server@f2c58526300c0d84837effa26d37cbd5d2694967
      with the main difference that our version of the test case uses
      DEBUG_SYNC instrumentation on ROLLBACK, not on purge.
      
      btr_cur_will_modify_tree(): Simplify the check further.
      This is the actual bug fix.
      
      row_undo_mod_remove_clust_low(), row_undo_mod_clust(): Add DEBUG_SYNC
      instrumentation for the test case.
      3e38d155
    • Marko Mäkelä's avatar
      MDEV-13626: Add the WL#6326 tests · 9cae7bdc
      Marko Mäkelä authored
      9cae7bdc
    • Jan Lindström's avatar
      MDEV-17062 : Test failure on galera.MW-336 · c4195305
      Jan Lindström authored
      Add mutex protection while we calculate required slave
      thread change and create them. Add error handling.
      c4195305
    • Jan Lindström's avatar
      7e378a8d
    • Alexander Barkov's avatar
      MDEV-19906 Port show_old_temporals from MySQL 5.6 · 6f65931f
      Alexander Barkov authored
      Old temporal data types (created with a pre-10.0 version of MariaDB)
      are now displayed with a /* mariadb-5.3 */ comment in:
      
      - SHOW CREATE TABLE
      - DESCRIBE
      - INFORMATION_SCHEMA.COLUMNS.COLUMN_TYPE
      
      For example:
      
      CREATE TABLE `t1` (
        `t0` datetime /* mariadb-5.3 */ DEFAULT NULL,
        `t6` datetime(6) /* mariadb-5.3 */ DEFAULT NULL
      ) ENGINE=MyISAM DEFAULT CHARSET=latin1
      
      Note, new temporal data types are displayed without a format comment.
      6f65931f
  6. 16 Jan, 2020 4 commits
    • Sergei Petrunia's avatar
      Merge branch '10.2' into 10.3 · e709eb9b
      Sergei Petrunia authored
      # Conflicts:
      #	mysql-test/suite/galera/r/MW-388.result
      #	mysql-test/suite/galera/t/MW-388.test
      #	mysql-test/suite/innodb/r/truncate_inject.result
      #	mysql-test/suite/innodb/t/truncate_inject.test
      #	mysql-test/suite/rpl/r/rpl_stop_slave.result
      #	mysql-test/suite/rpl/t/rpl_stop_slave.test
      #	sql/sp_head.cc
      #	sql/sp_head.h
      #	sql/sql_lex.cc
      #	sql/sql_yacc.yy
      #	storage/xtradb/buf/buf0dblwr.cc
      e709eb9b
    • Sergei Petrunia's avatar
      Merge branch '10.1' into 10.2 · b0442943
      Sergei Petrunia authored
      # Conflicts:
      #	sql/sp_head.cc
      #	sql/sql_select.cc
      #	sql/sql_trigger.cc
      b0442943
    • Sergei Golubchik's avatar
      fix compilation w/o perfschema · e7558d47
      Sergei Golubchik authored
      followup for 3a3605f4
      e7558d47
    • Sergei Golubchik's avatar
      compatibility with pcre2 < 10.30 · fc5a6a28
      Sergei Golubchik authored
      * It uses stack a lot, limit the recursion depth like
        we used to do for pcre.
      * But don't do that for newer pcre2 that uses stack very little
        (and doesn't support limiting recursion depth anyway).
      * Fix tests to verify only that deep recursion doesn't crash, but
        ignore results and warnings (which depend on pcre2 version)
      * Also different pcre2 versions report different offset in error messages,
        take that into account.
      fc5a6a28