1. 26 Aug, 2022 1 commit
    • tmokmss's avatar
      MDEV-18873 Server crashes in Compare_identifiers::operator or in... · 827b049e
      tmokmss authored
      MDEV-18873 Server crashes in Compare_identifiers::operator or in my_strcasecmp_utf8 upon ADD PERIOD IF NOT EXISTS with empty name
      
      empty identifier specified as `` ends up with a NULL LEX_CSTRING::str in lexer.
      This is not considered correct in upper layers, for example in Compare_identifiers::operator().
      Empty column name is usually avoided by a check_column_name() call while parsing,
      and period name matches the column name completely.
      Hence, this fix uses the mentioned call for verification, too.
      827b049e
  2. 25 Aug, 2022 3 commits
  3. 24 Aug, 2022 4 commits
  4. 23 Aug, 2022 1 commit
  5. 22 Aug, 2022 7 commits
    • Brandon Nesterenko's avatar
      MDEV-28294: set default role bypasses Replicate_Wild_Ignore_Table: mysql.% · 8963d64e
      Brandon Nesterenko authored
      Problem:
      ========
      When replicating SET DEFAULT ROLE, the pre-update check (i.e. that
      in set_var_default_role::check()) tries to validate the existence of
      the given rules/user even when the targeted tables are ignored. When
      previously issued CREATE USER/ROLE commands are ignored by the
      replica because of the replication filtering rules, this results in
      an error because the targeted data does not exist.
      
      Solution:
      ========
      Before checking that the given roles/user exist of a SET DEFAULT
      ROLE command, first ensure that the mysql.user and
      mysql.roles_mapping tables are not excluded by replication filters.
      
      Reviewed By:
      ============
      Andrei Elkin <andrei.elkin@mariadb.com>
      Sergei Golubchik <serg@mariadb.com>
      8963d64e
    • Marko Mäkelä's avatar
      Merge 10.3 into 10.4 · b68ae6dc
      Marko Mäkelä authored
      b68ae6dc
    • Thirunarayanan Balathandayuthapani's avatar
      MDEV-27700 ASAN: Heap_use_after_free in btr_search_drop_page_hash_index() · c7f8cfc9
      Thirunarayanan Balathandayuthapani authored
      Reason:
      =======
      Race condition between btr_search_drop_hash_index() and
      btr_search_lazy_free(). One thread does resizing of buffer pool
      and clears the ahi on all pages in the buffer pool, frees the
      index and table while removing the last reference. At the same time,
      other thread access index->heap in btr_search_drop_hash_index().
      
      Solution:
      =========
      Acquire the respective ahi latch before checking index->freed()
      
      btr_search_drop_page_hash_index(): Added new parameter to indicate
      that drop ahi entries only if the index is marked as freed
      
      btr_search_check_marked_free_index(): Acquire all ahi latches and
      return true if the index was freed
      c7f8cfc9
    • Alexander Barkov's avatar
      MDEV-27101 Subquery using the ALL keyword on TIMESTAMP columns produces a wrong result · 316847ea
      Alexander Barkov authored
      TIMESTAMP columns were compared as strings in ALL/ANY comparison,
      which did not work well near DST time change.
      
      Changing ALL/ANY comparison to use "Native" representation to compare
      TIMESTAMP columns, like simple comparison does.
      316847ea
    • Marko Mäkelä's avatar
      Merge 10.3 into 10.4 · 36d173e5
      Marko Mäkelä authored
      36d173e5
    • Marko Mäkelä's avatar
      MDEV-25257 follow-up: Fix a test · 6005f3c5
      Marko Mäkelä authored
      Ever since commit 09177ead
      the test innodb.row_format_redundant cannot work when the
      data file was created with innodb_checksum_algorithm=full_crc32.
      
      Backport of 10.5 commit a9d0bb12
      6005f3c5
    • Marko Mäkelä's avatar
      MDEV-13013 fixup: Adjust a test · fd0cd480
      Marko Mäkelä authored
      fd0cd480
  6. 19 Aug, 2022 1 commit
    • Marko Mäkelä's avatar
      MDEV-29043 mariabackup --compress hangs · a1055ab3
      Marko Mäkelä authored
      Even though commit b817afaa passed
      the test mariabackup.compress_qpress, that test turned out to be
      too small to reveal one more problem that had previously been prevented
      by the existence of ctrl_mutex. I did not realize that there can be
      multiple concurrent callers to compress_write(). One of them is the
      log copying thread; further callers are data file copying threads
      (default: --parallel=1).
      
      By default, there is only one compression worker thread
      (--compress-threads=1).
      
      compress_write(): Fix a race condition between threads that would
      use the same worker thread object. Make thd->data_avail contain the
      thread identifier of the submitter, and add thd->avail_cond to
      notify other compress_write() threads that are waiting for a slot.
      a1055ab3
  7. 17 Aug, 2022 1 commit
  8. 16 Aug, 2022 1 commit
  9. 15 Aug, 2022 4 commits
  10. 11 Aug, 2022 1 commit
  11. 10 Aug, 2022 8 commits
  12. 09 Aug, 2022 3 commits
  13. 08 Aug, 2022 3 commits
  14. 04 Aug, 2022 2 commits