1. 29 Jan, 2022 3 commits
  2. 28 Jan, 2022 3 commits
    • Sergei Golubchik's avatar
    • Monty's avatar
      Fixed result for embedded server · a1f630cc
      Monty authored
      - Revert wrongly record embedded result files. These were either
        recorded with normal server (not embedded) or an embedded server
        with not default compile option. This can be seen that the committed
        result file had replication variables which should never happen.
      
      - Reverted back change of include/is_embedded.inc. One cannot check for
        $MYSQL_EMBEDDED as this only tells if there exists an embedded
        server, not if the current server we are testing is the embedded
        server. This could easily be verified by doing
        'mtr sys_vars.sysvars_server_embedded'. This would fail with a wrong
        result instead of being marked as skipped as --embedded was not
        used.
      a1f630cc
    • Monty's avatar
      Fixed wrong function call in embedded server · 7045ec27
      Monty authored
      This happens when compiled with HAVE_EMBEDDED_PRIVILEGE_CONTROL.
      There is a lot of other problems with the above option that should
      be fixed at some point
      7045ec27
  3. 27 Jan, 2022 11 commits
  4. 26 Jan, 2022 9 commits
    • Daniel Black's avatar
      MDEV-27635: selinux: allow read of /proc/sys/kernel/core_pattern · 8b3b7380
      Daniel Black authored
      Prevent the error:
      
      setroubleshoot[23678]: SELinux is preventing /usr/libexec/mysqld from read access on the file core_pattern.
      
      Reading of the core pattern occurs on crash as added in MDEV-15051
      
      RHEL-7.7
      
      $  ls -laZ /proc/sys/kernel/core_pattern
      -rw-r--r--. root root system_u:object_r:usermodehelper_t:s0 /proc/sys/kernel/core_pattern
      8b3b7380
    • Daniel Black's avatar
      MDEV-27289: mtr test for WITH_SERVER_EMBEDDED=ON reenable · 68b3fa88
      Daniel Black authored
      mtr is checking the wrong path for the embedded executable
      on out of tree builds.
      
      The is_embedded.inc tests are also checking the version rather
      than the MTR MYSQL_EMBEDDED environment variable.
      
      As a result, a few tests are out of date in the result recordings.
      68b3fa88
    • Daniel Black's avatar
      MDEV-27607: mysql_install_db to install mysql_upgrade_info · 2e81eab2
      Daniel Black authored
      For compatibility this is under an extra option --upgrade-info
      
      The goal here is to install a data directory with the required
      info to let mysql_upgrade know that an upgrade isn't required.
      2e81eab2
    • Marko Mäkelä's avatar
    • Oleksandr Byelkin's avatar
      new CC · 7db489fc
      Oleksandr Byelkin authored
      7db489fc
    • Vladislav Vaintroub's avatar
    • Lena Startseva's avatar
      MDEV-8652: Partitioned table creation problem when creating from procedure... · b9623383
      Lena Startseva authored
      MDEV-8652: Partitioned table creation problem when creating from procedure context twice in same session
      
      The problem was solved in in MDEV-7990, this commit contains only test
      b9623383
    • Alexey Botchkov's avatar
      MDEV-20770 Server crashes in JOIN::transform_in_predicates_into_in_subq upon... · 020dc54d
      Alexey Botchkov authored
      MDEV-20770 Server crashes in JOIN::transform_in_predicates_into_in_subq upon 2nd execution of PS/SP comparing GEOMETRY with other types.
      
      The Item_in_subselect::in_strategy keeps the value and as the error
      happens the condition isn't modified. That leads to wrong ::fix_fields
      execution on second PS run. Also the select->table_list is merged
      but not restored if an error happens, which causes hanging loops on
      the third PS execution.
      020dc54d
    • Igor Babaev's avatar
      MDEV-27510 Query returns wrong result when using split optimization · 00412656
      Igor Babaev authored
      This bug may affect the queries that uses a grouping derived table with
      grouping list containing references to columns from different tables if
      the optimizer decides to employ the split optimization for the derived
      table. In some very specific cases it may affect queries with a grouping
      derived table that refers only one base table.
      This bug was caused by an improper fix for the bug MDEV-25128. The fix
      tried to get rid of the equality conditions pushed into the where clause
      of the grouping derived table T to which the split optimization had been
      applied. The fix erroneously assumed that only those pushed equalities
      that were used for ref access of the tables referenced by T were needed.
      In fact the function remove_const() that figures out what columns from the
      group list can be removed if the split optimization is applied can uses
      other pushed equalities as well.
      This patch actually provides a proper fix for MDEV-25128. Rather than
      trying to remove invalid pushed equalities referencing the fields of SJM
      tables with a look-up access the patch attempts not to push such equalities.
      
      Approved by Oleksandr Byelkin <sanja@mariadb.com>
      00412656
  5. 25 Jan, 2022 3 commits
    • Brandon Nesterenko's avatar
      MDEV-16091: Seconds_Behind_Master spikes to millions of seconds · 8b15d0d4
      Brandon Nesterenko authored
      This patch addresses two problems with
      rpl.rpl_seconds_behind_master_spike
      
      First, --sync_slave_with_master / select master_pos_wait
      seems to have a bug where it will hang after all master
      events have been executed.
      
      This patch removes the sync_slave_with_master command from
      the test, where it not required anyway as it is used to
      declare explicit cleanup
      
      Second, the test uses timestamps to ensure that the
      Seconds_Behind_Master value does not point to a time too
      far in the past. The checks of these timestamps were
      too strict, because they could be slightly inconsistent
      with the master and the SBM would be counted as invalid
      when it was actually correct.
      
      To fix this, a slight buffer was added to the check
      to ensure the value is valid but still does not point
      too far in the past
      
      Reviewed By:
      ===========
      Andrei Elkin <andrei.elkin@mariadb.com>
      8b15d0d4
    • Alexey Botchkov's avatar
      MDEV-25917 create table like fails if source table is partitioned and engine... · 50e66db0
      Alexey Botchkov authored
      MDEV-25917 create table like fails if source table is partitioned and engine is myisam or aria with data directory.
      
      Create table like removes data_file_path/index_file_path from the
      thd->work_partition_info.
      50e66db0
    • Alexander Barkov's avatar
      MDEV-18918 SQL mode EMPTY_STRING_IS_NULL breaks RBR upon CREATE TABLE .. SELECT · da37bfd8
      Alexander Barkov authored
      Removing DEFAULT from INFORMATION_SCHEMA columns.
      DEFAULT in read-only tables is rather meaningless.
      Upgrade should go smoothly.
      
      Also fixes:
       MDEV-20254 Problems with EMPTY_STRING_IS_NULL and I_S tables
      da37bfd8
  6. 24 Jan, 2022 2 commits
  7. 22 Jan, 2022 3 commits
    • Marko Mäkelä's avatar
    • Jan Lindström's avatar
      MDEV-21308 : WSREP: binlog ... cache not empty warnings on server with WSREP disabled · 2b6f235a
      Jan Lindström authored
      Remove output if wsrep is not enabled.
      2b6f235a
    • Dmitry Shulga's avatar
      MDEV-20516: Assertion `!lex->proc_list.first && !lex->result &&... · f99d141c
      Dmitry Shulga authored
      MDEV-20516: Assertion `!lex->proc_list.first && !lex->result && !lex->param_list.elements' failed in mysql_create_view
      
      Execution of the CREATE VIEW statement sent via binary protocol
      where the flags of the COM_STMT_EXECUTE request a cursor to be opened
      before running the statement results in an assert failure.
      
      This assert fails since the data member thd->lex->result has not null
      value pointing to an instance of the class Select_materialize.
      The data member thd->lex->result is assigned a pointer to the class
      Select_materialize in the function mysql_open_cursor() that invoked
      in case the packet COM_STMT_EXECUTE requests a cursor to be opened.
      
      After thd->lex->result is assigned a pointer to an instance of the
      class Select_materialize the function mysql_create_view() is called
      (indirectly via the function mysql_execute_statement()) and the assert
      fails.
      
      The assert
        DBUG_ASSERT(!lex->proc_list.first && !lex->result &&
                    !lex->param_list.elements);
      
      was added by the commit 591c06d4.
      Unfortunately , the condition
        !lex->result
      was specified incorrect. It was supposed that the thd->lex->result
      is set only by parser on handling the clauses SELECT ... INTO
      but indeed it is also set inside mysql_open_cursor() and
      that fact was missed by the assert's condition.
      
      So, the fix for this issue is to just remove the condition
        !lex->result
      from the failing assert.
      f99d141c
  8. 21 Jan, 2022 6 commits