1. 18 Dec, 2020 1 commit
  2. 17 Dec, 2020 1 commit
  3. 15 Dec, 2020 1 commit
    • Olivier Bertrand's avatar
      - Fix pretty=2 Tabjson bug on INSERT. · ceacffbb
      Olivier Bertrand authored
        Occuring when inserting more than one line in one statement.
        modified:   storage/connect/json.cpp
      
      - Fix a wrong if statement
        modified:   storage/connect/tabjson.cpp
      
      - Continue BSON implementation
        modified:   storage/connect/bson.cpp
        modified:   storage/connect/bson.h
        modified:   storage/connect/filamtxt.cpp
        modified:   storage/connect/filamtxt.h
        modified:   storage/connect/tabbson.cpp
        modified:   storage/connect/tabbson.h
      
      - No need anymore
        deleted:    storage/connect/mysql-test/connect/r/bson.result
        deleted:    storage/connect/mysql-test/connect/t/bson.test
      ceacffbb
  4. 11 Dec, 2020 1 commit
  5. 08 Dec, 2020 2 commits
    • Olivier Bertrand's avatar
      - Fix json_bjson (s was erase by Json_Subset) · 4eeadedc
      Olivier Bertrand authored
        modified:   storage/connect/jsonudf.cpp
        modified:   storage/connect/jsonudf.h
      
      - Fix compile error (Force_Bson was not conditional by BSON_SUPPORT)
        modified:   storage/connect/ha_connect.cc
      
      - Continue Bjson implementation
        modified:   storage/connect/block.h
        modified:   storage/connect/bson.cpp
        modified:   storage/connect/bson.h
        modified:   storage/connect/bsonudf.cpp
        modified:   storage/connect/bsonudf.h
        modified:   storage/connect/plugutil.cpp
        modified:   storage/connect/tabbson.cpp
        modified:   storage/connect/tabjson.cpp
      
      - Typo
        deleted:    storage/connect/Header.h
      4eeadedc
    • Olivier Bertrand's avatar
      - Continue BSON implementation · 871532c3
      Olivier Bertrand authored
        modified:   storage/connect/bson.cpp
        modified:   storage/connect/bson.h
        modified:   storage/connect/bsonudf.cpp
        modified:   storage/connect/cmgfam.cpp
        modified:   storage/connect/cmgfam.h
        modified:   storage/connect/ha_connect.cc
        modified:   storage/connect/jmgfam.cpp
        modified:   storage/connect/jmgfam.h
        modified:   storage/connect/jmgoconn.cpp
        modified:   storage/connect/mycat.cc
        modified:   storage/connect/tabbson.cpp
        modified:   storage/connect/tabjson.cpp
      871532c3
  6. 04 Dec, 2020 1 commit
  7. 01 Dec, 2020 3 commits
  8. 27 Nov, 2020 1 commit
    • Olivier Bertrand's avatar
      - Begin implementation of BSON · 950bf6ab
      Olivier Bertrand authored
        modified:   storage/connect/bson.cpp
        modified:   storage/connect/bson.h
        modified:   storage/connect/bsonudf.cpp
        modified:   storage/connect/bsonudf.h
        modified:   storage/connect/jsonudf.cpp
      950bf6ab
  9. 25 Nov, 2020 2 commits
  10. 21 Nov, 2020 2 commits
  11. 20 Nov, 2020 3 commits
  12. 19 Nov, 2020 1 commit
  13. 18 Nov, 2020 2 commits
  14. 15 Nov, 2020 1 commit
  15. 14 Nov, 2020 2 commits
  16. 13 Nov, 2020 3 commits
    • Olivier Bertrand's avatar
    • Marko Mäkelä's avatar
      MDEV-24188 Hang in buf_page_create() after reusing a previously freed page · bb328a2a
      Marko Mäkelä authored
      The fix of MDEV-23456 (commit b1009ae5)
      introduced a livelock between page flushing and a thread that is
      executing buf_page_create().
      
      buf_page_create(): If the current mini-transaction is holding
      an exclusive latch on the page, do not attempt to acquire another
      one, and do not care about any I/O fix.
      
      mtr_t::have_x_latch(): Replaces mtr_t::get_fix_count().
      
      dyn_buf_t::for_each_block(const Functor&) const: A new variant.
      
      rw_lock_own(): Add a const qualifier.
      
      Reviewed by: Thirunarayanan Balathandayuthapani
      bb328a2a
    • Igor Babaev's avatar
      MDEV-23619 MariaDB crash on WITH RECURSIVE UNION ALL (CTE) query · 190e8a4c
      Igor Babaev authored
      Due to a premature cleanup of the unit that specified a recursive CTE
      used in the second operand of union the server fell into an infinite
      loop in the reported test case. In other cases this premature cleanup
      could cause other problems.
      The bug is the result of a not quite correct fix for MDEV-17024. The
      unit that specifies a recursive CTE has to be cleaned only after the
      cleanup of the last external reference to this CTE. It means that
      cleanups of the unit triggered not by the cleanup of a external
      reference to the CTE must be blocked.
      Usage of local table chains in selects to get external references to
      recursive CTEs was not correct either because of possible merges of
      some selects.
      
      Also fixed a minor bug in st_select_lex::set_explain_type() that caused
      typing 'RECURSIVE UNION' instead of 'UNION' in EXPLAIN output for external
      references to a recursive CTE.
      190e8a4c
  17. 12 Nov, 2020 1 commit
    • Sujatha's avatar
      MDEV-4633: multi_source.simple test fails sporadically · 984a06db
      Sujatha authored
      Analysis:
      ========
      Writes to 'rli->log_space_total' needs to be synchronized, otherwise both
      SQL_THREAD and IO_THREAD can try to modify the variable simultaneously
      resulting in incorrect rli->log_space_total.  In the current test scenario
      SQL_THREAD is trying to decrement 'rli->log_space_total' in 'purge_first_log'
      and IO_THREAD is trying to increment the 'rli->log_space_total' in
      'queue_event' simultaneously. Hence test occasionally fails with  result
      mismatch.
      
      Fix:
      ===
      Convert 'rli->log_space_total' variable to atomic type.
      984a06db
  18. 11 Nov, 2020 7 commits
  19. 10 Nov, 2020 2 commits
    • Anel Husakovic's avatar
      MDEV-23769: MTR can abort before it prints the test result summary · cd927dd3
      Anel Husakovic authored
      - Patch is solving generating report on warning
              To repeat the error run single worker:
              ```
              ./mtr --mysqld=--lock-wait-timeout=-xx 1st 1st --force --parallel 1
              ```
              or `N` workers with `N+1` tests with failures and `force`
              ```
              ./mtr --mysqld=--lock-wait-timeout=-xx 1st 1st grant5 --force --parallel 2
              ```
      - Patch is doing cosmetic fix of `current_test` log file which holds the old log value of test `CURRENT TEST:..` in `mark_log()` in case of `unknown option` and as such
        the logic which is using it's content doesn't output valid log content and doesn't generate valid `$test->{'comment'}` message.asdf
      
      - Closing the socket/handler after the removing the handler from IO for
      consistency
      
      Reviewed by: serg@mariadb.com
      cd927dd3
    • Marko Mäkelä's avatar
      MDEV-24171 index_online_log is instrumented as rw-lock, not mutex · 5171ab80
      Marko Mäkelä authored
      The row_log_t::mutex is a mutex, yet it was instrumented as
      rw-lock in PERFORMANCE_SCHEMA.
      5171ab80
  20. 09 Nov, 2020 3 commits
    • Igor Babaev's avatar
      MDEV-23811: With large number of indexes optimizer chooses an inefficient plan · bea84aef
      Igor Babaev authored
      This bug could manifest itself for a query with WHERE condition containing
      top level OR formula such that each conjunct contained a single-range
      condition supported by the same index. One of these range conditions must
      be fully covered by another range condition that is used later in the OR
      formula. Additionally at least one of these condition should be ANDed with
      a sargable range condition supported by a different index.
      
      There were several attempts to fix related problems for OR conditions after
      the backport of range optimizer code from MySQL (commit
      0e19f3e3). Unfortunately the first of these
      fixes contained typo remained unnoticed until recently. This typo bug led
      to rejection of valid range accesses. This patch fixed this typo bug.
      The fix revealed another two bugs: one in a constructor for SEL_ARG,
      the other in the function tree_or(). Both are fixed in this patch.
      bea84aef
    • Sergei Petrunia's avatar
      MDEV-24117: Memory management problem ...: Add a testcase · 1404f3be
      Sergei Petrunia authored
      Add a testcase.
      1404f3be
    • Sergei Petrunia's avatar
      MDEV-24117: Memory management problem in statistics state for ... IN · f81eef62
      Sergei Petrunia authored
      Part#1: Revert the patch that caused it:
      
      commit 291be494
      Author: Igor Babaev <igor@askmonty.org>
      Date:   Thu Sep 24 22:02:00 2020 -0700
      
          MDEV-23811: With large number of indexes optimizer chooses an inefficient plan
      f81eef62