1. 05 May, 2021 7 commits
  2. 04 May, 2021 3 commits
  3. 03 May, 2021 5 commits
  4. 02 May, 2021 1 commit
  5. 01 May, 2021 1 commit
  6. 30 Apr, 2021 8 commits
    • Sergei Petrunia's avatar
      MDEV-23723: Crash when test_if_skip_sort_order() is checked for derived ... · 2820f30d
      Sergei Petrunia authored
      The problem was caused by the following scenario:
      
      Subquery's table has two indexes, KEY a(a), KEY a_b(a,b)
      
      - LATERAL DERIVED optimization decides to use index a.
        = The subquery uses ref access over key a.
      - test_if_skip_sort_order() sees that KEY a_b satisfies the
        subquery's GROUP BY clause, and attempts to switch to it.
        = It fails to do so, because KEYUSE objects for index a_b
          are switched off.
      
      Fixed by disallowing to change the ref access key if it uses KEYUSE
      objects injected by LATERAL DERIVED optimization.
      2820f30d
    • Sujatha's avatar
      MDEV-16146: MariaDB slave stops with following errors. · abe6eb10
      Sujatha authored
      Problem:
      ========
      180511 11:07:58 [ERROR] Slave I/O: Unexpected master's heartbeat data:
      heartbeat is not compatible with local info;the event's data: log_file_name
      mysql-bin.000009 log_pos 1054262041, Error_code: 1623
      
      Analysis:
      =========
      In replication setup when master server doesn't have any events to send to
      slave server it sends an 'Heartbeat_log_event'. This event carries the
      current binary log filename and offset details. The offset values is stored
      within 4 bytes of event header. When the size of binary log is higher than
      UINT32_MAX the log_pos values will not fit in 4 bytes memory.  It overflows
      and hence slave stops with an error.
      
      Fix:
      ===
      Since we cannot extend the common_header of Log_event class, a greater than
      4GB value of Log_event::log_pos is made to be transported with a HeartBeat
      event's sub-header.  Log_event::log_pos in such case is set to zero to
      indicate that the 8 byte sub-header is allocated in the event.
      
      In case of cross version replication following behaviour is expected
      
      OLD - Server without fix
      NEW - Server with fix
      
      OLD<->NEW : works bidirectionally as long as the binlog offset is
                  (normally) within 4GB.
      
      When log_pos > UINT32_MAX
      OLD->NEW  : The 'log_pos' is bound to overflow and NEW slave may report
                  an invalid event/incompatible heart beat event error.
      NEW->OLD  : Since patched server sets log_pos=0 on overflow, OLD slave will
                  report invalid event error.
      abe6eb10
    • Thirunarayanan Balathandayuthapani's avatar
      MDEV-25536 InnoDB: Failing assertion: sym_node->table != NULL in pars_retrieve_table_def · 13b9af50
      Thirunarayanan Balathandayuthapani authored
      - Fixing post-push failure of innodb_fts_misc_1 test case.
      13b9af50
    • Monty's avatar
      MDEV-25507 CHECK on encrypted Aria table complains about "Wrong LSN" · 25fa2a68
      Monty authored
      This happens during repair when a temporary table is opened
      with HA_OPEN_COPY, which resets 'share->born_transactional', which
      the encryption code did not like.
      
      Fixed by resetting just share->now_transactional.
      25fa2a68
    • Kentoku SHIBA's avatar
      MDEV-22265 Connect string character limit too small for full 64 character... · 42cdc37f
      Kentoku SHIBA authored
      MDEV-22265 Connect string character limit too small for full 64 character InnoDB table-name limit when using ad-hoc Spider server definitions.
      
      Fix length for getting default table name.
      42cdc37f
    • Thirunarayanan Balathandayuthapani's avatar
      MDEV-25536 InnoDB: Failing assertion: sym_node->table != NULL in pars_retrieve_table_def · 0024524d
      Thirunarayanan Balathandayuthapani authored
      InnoDB tries to fetch the deleted doc ids for discarded
      tablespace. In i_s_fts_deleted_generic_fill(), InnoDB needs
      to check whether the table is discarded or not before fetching
      deleted doc ids.
      0024524d
    • Marko Mäkelä's avatar
      MDEV-25568 RENAME TABLE causes "Ignoring data file" messages · 65d2fbaf
      Marko Mäkelä authored
      fil_ibd_load(): Remove a message that is basically saying that
      everything works as expected. The other "Ignoring data file" message
      about the presence of an extraneous file will be retained
      (and expected by the test innodb.log_file_name).
      65d2fbaf
    • Jan Lindström's avatar
      Update wsrep-lib · 0cc811c6
      Jan Lindström authored
      0cc811c6
  7. 29 Apr, 2021 6 commits
  8. 28 Apr, 2021 9 commits
    • Sergei Golubchik's avatar
      MDEV-25501 routine_definition in information_schema.routines loses tablename... · 8f9a72a1
      Sergei Golubchik authored
      MDEV-25501 routine_definition in information_schema.routines loses tablename if it starts with an _ and is not backticked
      
      remove code duplication in Lex_input_stream::scan_ident_middle(),
      make sure identifiers are always use the same code path whether
      they start form an underscore or not.
      8f9a72a1
    • Vladislav Vaintroub's avatar
      MDEV-24382 Assertion in tdc_remove_table · 65e73b56
      Vladislav Vaintroub authored
      The assert is no more reproducible in the lastest 10.5-10.6
      
      The patch only adds testcase from MDEV-24382.
      65e73b56
    • Dmitry Shulga's avatar
      MDEV-25543: Building failure on MacOS in case MariadDB server is compiled with XCode 12.5 · e788738e
      Dmitry Shulga authored
      Attempt to build MariaDB server on MacOS could result in
      compilation errors like the following one:
      
        In file included from server-10.2/storage/perfschema/cursor_by_account.cc:28:
        In file included from server-10.2/include/my_global.h:287:
        In file included from /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX11.3.sdk/usr/include/c++/v1/math.h:309:
        In file included from /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX11.3.sdk/usr/include/c++/v1/type_traits:418:
          server-10.2/version:1:1: error: expected unqualified-id
      
          MYSQL_VERSION_MAJOR=10
          ^
        server-10.2/build.dir/include/my_config.h:529:29: note: expanded from macro 'MYSQL_VERSION_MAJOR'
      
      This kind of compiler errors occur by the reson that compiler's system headers
      contain the directive '#include <version>' and a compiler is invoked
      with -I${CMAKE_SOURCE_DIR}.
      
      The MariaDB source code root directory contains the file VERSION that is handled
      by the compiler during processing the directive #include <version>
      since file names on MacOS are case insensetive, so version and VERSION is treated as
      the same file name.
      
      To fix the issue the source code root directory should be removed from a list
      of directories used by the compiler for include search path.
      e788738e
    • Krunal Bauskar's avatar
      MDEV-25093: Adaptive flushing fails to kick in even if · 3f4b7ed9
      Krunal Bauskar authored
                  innodb_adaptive_flushing_lwm is hit. (possible regression)
      
      adaptive flushing should kick in if
      a. dirty_pct (dirty pages in buffer pool) > innodb_max_dirty_pages_pct_lwm
      OR
      b. innodb_adaptive_flushing_lwm limit is reached (default to 10%)
      
      both conditions are mutually exclusive and whichever is first to evaluate
      true should kick-start the adaptive flushing.
      
      After recent changes to simplify the flushing algorithm logic, (b) got ignored
      that introduced the said regression.
      3f4b7ed9
    • Oleksandr Byelkin's avatar
      Bug#29363867: LOST CONNECTION TO MYSQL SERVER DURING QUERY · 24693c6f
      Oleksandr Byelkin authored
      The problem is that sharing default expression among set instruction
      leads to attempt access result field of function created in
      other instruction runtime MEM_ROOT and already freed
      (a bit different then MySQL problem).
      
      Fix is the same as in MySQL (but no optimisation for constant), turn
      DECLARE a, b, c type DEFAULT expr;
      to
      DECLARE a type DEFAULT expr, b type DEFAULT a, c type DEFAULT a;
      24693c6f
    • Daniele Sciascia's avatar
      MDEV-25553 : Avoid unnecessary rollbacks with SR · b1b2689f
      Daniele Sciascia authored
      This patch changes statement rollback for streaming replication.
      Previously, a statement rollback was turned into full transaction
      rollback in the case where the transaction had already replicated a
      fragment. This was introduced in the initial implementation of
      streaming replication due to the fact that we do not have a mechanism
      to perform a statement rollback on the applying side.
      This policy is however overly pessimistic, causing full rollbacks even
      in cases where a local statement rollback, would not require a
      statement rollback on the applying side. This happens to be case when
      the statement itself has not replicated any fragments.
      So the patch changes the condition that determines if a statement
      rollback should be turned into a full rollback accordingly.
      Reviewed-by: default avatarJan Lindström <jan.lindstrom@mariadb.com>
      b1b2689f
    • Jan Lindström's avatar
      MDEV-25319 : Long BF log wait turns on InnoDB Monitor output without telling, never turns it off · e85b389b
      Jan Lindström authored
      Removed explicit InnoDB monitor startup and used just functions
      to print current lock information.
      e85b389b
    • Jan Lindström's avatar
      MDEV-25258 : SET PASSWORD command fail with wsrep api · f946192e
      Jan Lindström authored
      Problem was that we should skip strict password validation on
      applier nodes similarly as is done for slave nodes.
      f946192e
    • Jan Lindström's avatar
      MDEV-21514 : Galera test failure on galera.galera_wan_restart_sst · c6dbabed
      Jan Lindström authored
      Replace unnecessary sleeps with real wait_conditions to make
      sure correct cluster sizes.
      c6dbabed