1. 30 Sep, 2023 11 commits
  2. 29 Sep, 2023 3 commits
  3. 27 Sep, 2023 1 commit
  4. 25 Sep, 2023 1 commit
  5. 24 Sep, 2023 4 commits
  6. 23 Sep, 2023 2 commits
  7. 21 Sep, 2023 4 commits
    • Nikita Malyavin's avatar
      fix rdb_i_s.cc build · e9573c05
      Nikita Malyavin authored
      e9573c05
    • Nikita Malyavin's avatar
      Merge branch '11.2' into 11.3 · 28b40372
      Nikita Malyavin authored
      28b40372
    • Alexander Barkov's avatar
      MDEV-32220 sql_yacc.yy: unify the drop_routine rule · d75ef02a
      Alexander Barkov authored
      - Removing two copies of the drop_routine.
        Adding a shared and much simplified version.
      
      - Removing LEX metods:
            bool stmt_drop_function(const DDL_options_st &options,
                                    const Lex_ident_sys_st &db,
                                    const Lex_ident_sys_st &name);
      
            bool stmt_drop_function(const DDL_options_st &options,
                                    const Lex_ident_sys_st &name);
      
            bool stmt_drop_procedure(const DDL_options_st &options,
                                     sp_name *name);
      
        The code inside the methods was very similar.
        Adding one method instead:
      
            bool stmt_drop_routine(const Sp_handler *sph,
                                const DDL_options_st &options,
                                const Lex_ident_sys_st &db,
                                const Lex_ident_sys_st &name);
      
      - Adding a new virtual method Sp_handler:sqlcom_drop().
        It helped to unify the code inside the new stmt_drop_routine().
      d75ef02a
    • Alexander Barkov's avatar
      MDEV-32219 Shift/reduce grammar conflict: GRANT .. ON FUNCTION · 19885128
      Alexander Barkov authored
      Resolving the shift/reduce conflict conflict in:
      
      GRANT ..  ON /*ambiguity*/ FUNCTION f1 TO foo@localhost;
      GRANT ... ON /*ambiguity*/ [TABLE] function TO foo@localhost;
      
      and in
      
      REVOKE ..  ON /*ambiguity*/ FUNCTION f1 TO foo@localhost;
      REVOKE ... ON /*ambiguity*/ [TABLE] function TO foo@localhost;
      
      using a new %prec directive.
      19885128
  8. 19 Sep, 2023 1 commit
    • Marko Mäkelä's avatar
      MDEV-32044 Mariadb crash after upgrading to 11.0.3 · 030ee267
      Marko Mäkelä authored
      ibuf_bitmap_buffered(): A new predicate, to check if the
      IBUF_BITMAP_BUFFERED bit for a particular page is set.
      
      ibuf_merge(): If ibuf_bitmap_buffered() does not hold,
      skip the records for the page. One reason why we might have
      this situation is the bug that was fixed in
      commit 34c283ba (MDEV-32132).
      030ee267
  9. 15 Sep, 2023 1 commit
  10. 14 Sep, 2023 2 commits
  11. 13 Sep, 2023 1 commit
    • Alexander Barkov's avatar
      MDEV-31606 Refactor check_db_name() to get a const argument · f5aae716
      Alexander Barkov authored
      Problem:
      Under terms of MDEV-27490, we'll update Unicode version used
      to compare identifiers to 14.0.0. Unlike in the old Unicode version,
      in the new version a string can grow during lower-case. We cannot
      perform check_db_name() inplace any more.
      
      Change summary:
      
      - Allocate memory to store lower-cased identifiers in memory root
      
      - Removing check_db_name() performing both in-place lower-casing and validation
        at the same time. Splitting it into two separate stages:
        * creating a memory-root lower-cased copy of an identifier
          (using new MEM_ROOT functions and Query_arena wrapper methods)
        * performing validation on a constant string
          (using Lex_ident_fs methods)
      
      Implementation details:
      
      - Adding a mysys helper function to allocate lower-cased strings on MEM_ROOT:
      
          lex_string_casedn_root()
      
        and a Query_arena wrappers for it:
      
          make_ident_casedn()
          make_ident_opt_casedn()
      
      - Adding a Query_arena method to perform both MEM_ROOT lower-casing and
        database name validation at the same time:
      
          to_ident_db_internal_with_error()
      
        This method is very close to the old (pre-11.3) check_db_name(),
        but performs lower-casing to a newly allocated MEM_ROOT
        memory (instead of performing lower-casing the original string in-place).
      
      - Adding a Table_ident method which additionally handles derived table names:
      
          to_ident_db_internal_with_error()
      
      - Removing the old check_db_name()
      f5aae716
  12. 12 Sep, 2023 1 commit
    • Sergei Petrunia's avatar
      MDEV-31496: Make optimizer handle UCASE(varchar_col)=... · e987b935
      Sergei Petrunia authored
      (Review input addressed)
      (Added handling of UPDATE/DELETE and partitioning w/o index)
      
      If the properties of the used collation allow, do the following
      equivalent rewrites:
      
      1. UPPER(key_col)=expr  ->  key_col=expr
         expr=UPPER(key_col)  ->  expr=key_col
         (also rewrite both sides of the equality at the same time)
      
      2. UPPER(key_col) IN (constant-list)  -> key_col IN (constant-list)
      
      - Mark utf8mb{3,4}_general_ci as collations that allow this.
      - Add optimizer_switch='sargable_casefold=ON' to control this.
        (ON by default in this patch)
      - Cover the rewrite in Optimizer Trace, rewrite name is
        "sargable_casefold_removal".
      e987b935
  13. 11 Sep, 2023 1 commit
  14. 09 Sep, 2023 2 commits
    • Monty's avatar
      Updated sql-bench to run with PostgreSQL 14.9 · e39ed5d7
      Monty authored
      - Updated capabilities for PostgreSQL in server.cfg
      - Updated test-ATIS & test-table-elimination to work with PostgreSQL
      - Updated test-transaction test to also work with non transactional tables
      
      Other things:
      - Added test of tables with many keys in test-insert
      - Added 2 new GROUP BY .. ORDER BY test
      e39ed5d7
    • Monty's avatar
      Added support for --skip-secure-file-priv · 69c420be
      Monty authored
      This works the same as secure-file-priv="", but is more obvious way to
      turn of secure-file-priv.
      69c420be
  15. 08 Sep, 2023 2 commits
  16. 04 Sep, 2023 2 commits
    • Alexander Barkov's avatar
      MDEV-32081 Remove my_casedn_str() from get_canonical_filename() · 8ad1e26b
      Alexander Barkov authored
      - Moving get_canonical_filename() from a public function to a method in handler.
      - Adding a helper method is_canonical_filename() to handler.
      - Adding helper methods left(), substr(), starts_with() to Lex_cstring.
      - Adding helper methods is_sane(), buffer_overlaps(),
        max_data_size() to CharBuffer.
      - Adding append_casedn() to CharBuffer. It implements the main functionality
        that replaces the being removed my_casedn_str() call.
      - Adding a class Table_path_buffer,
        a descendant of CharBuffer with size FN_REFLEN.
      - Changing get_canonical_filename() to get a pointer to Table_path_buffer
        instead just a pointer to char.
      - Changing the data type of the "path" parameter and the return type of
        get_canonical_filename() from char* to Lex_cstring.
      8ad1e26b
    • Alexander Barkov's avatar
      MDEV-31505 Deprecate mariabackup --innobackupex mode · 5de23b1d
      Alexander Barkov authored
      1. "mariabackup --innobackupex" now prints a new warning:
             '--innobackupex' is deprecated and will be removed in a future release
      
      2. "mariabackup --innobackupex" does not print this wrong warning any more:
              --innobackupex: Deprecated program name.
                It will be removed in a future release,
                use '/path/to/mariadb-backup' instead
      5de23b1d
  17. 30 Aug, 2023 1 commit