1. 22 Sep, 2020 2 commits
  2. 21 Sep, 2020 13 commits
  3. 18 Sep, 2020 2 commits
  4. 17 Sep, 2020 4 commits
  5. 16 Sep, 2020 1 commit
  6. 14 Sep, 2020 5 commits
  7. 11 Sep, 2020 3 commits
  8. 10 Sep, 2020 5 commits
    • Jan Lindström's avatar
      MDEV-23709 : Galera test failure on galera_fk_cascade_delete_debug · 8993e40d
      Jan Lindström authored
      Add wait_condition so that inserts to parent and child are replicated
      and applied before we set debug sync point.
      8993e40d
    • Jan Lindström's avatar
      MDEV-23101 : SIGSEGV in lock_rec_unlock() when Galera is enabled · 224c9504
      Jan Lindström authored
      Remove incorrect BF (brute force) handling from lock_rec_has_to_wait_in_queue
      and move condition to correct callers. Add a function to report
      BF lock waits and assert if incorrect BF-BF lock wait happens.
      
      wsrep_report_bf_lock_wait
      	Add a new function to report BF lock wait.
      
      wsrep_assert_no_bf_bf_wait
      	Add a new function to check do we have a
      	BF-BF wait and if we have report this case
      	and assert as it is a bug.
      
      lock_rec_has_to_wait
      	Use new wsrep_assert_bf_wait to check BF-BF wait.
      
      lock_rec_create_low
      lock_table_create
      	Use new function to report BF lock waits.
      
      lock_rec_insert_by_trx_age
      lock_grant_and_move_on_page
      lock_grant_and_move_on_rec
      	Assert that trx is not Galera as VATS is not compatible
      	with Galera.
      
      lock_rec_add_to_queue
      	If there is conflicting lock in a queue make sure that
      	transaction is BF.
      
      lock_rec_has_to_wait_in_queue
      	Remove incorrect BF handling. If there is conflicting
      	locks in a queue all transactions must wait.
      
      lock_rec_dequeue_from_page
      lock_rec_unlock
      	If there is conflicting lock make sure it is not
      	BF-BF case.
      
      lock_rec_queue_validate
      	Add Galera record locking rules comment and use
      	new function to report BF lock waits.
      
      All attempts to reproduce the original assertion have been
      failed. Therefore, there is no test case on this commit.
      224c9504
    • Thirunarayanan Balathandayuthapani's avatar
      MDEV-23199 page_compression flag is missing for full_crc32 tablespace · f19da4a0
      Thirunarayanan Balathandayuthapani authored
      Problem:
      ======
      Making the tablespace as page_compressed doesn't do table rebuild.
      It does change only the FSP_SPACE_FLAGS.
      
      During recovery:
      1) InnoDB encounters FILE_CREATE redo log and opens the tablespace
      with old FSP_SPACE_FLAGS value.
      2) Only parsing of redo log has been finished. Now InnoDB tries to
      load the table. If the existing tablespace flags doesn't match
      with table flags then InnoDB should read page0. But in
      fsp_flags_try_adjust(), skips the page read for full_crc32 format.
      3) After that, InnoDB tries to open the clustered index and it
      leads to failure of page validation.
      
      Fix:
      ===
      While parsing the redo log record, track FSP_SPACE_FLAGS in
      recv_spaces for the respective space id. Assign the flags for
      the tablespace when it is loaded.
      
      recv_parse_set_size_and_flags(): Parse the redo log to set the
      tablespace recovery size and flags.
      
      fil_space_set_recv_size_and_flags(): Changed from
      fil_space_set_recv_size(). To set the recovery size and flags of
      the tablespace.
      
      Introduce flags variable in file_name_t to maintain the tablespace
      flag which we encountered during parsing of redo log.
      
      is_flags_full_crc32_equal(), is_flags_non_full_crc32_equal(): Rename
      the variable page_ssize and space_page_ssize with fcrc32_psize and
      non_fcrc32_psize.
      f19da4a0
    • Thirunarayanan Balathandayuthapani's avatar
      MDEV-18867 Long Time to Stop and Start · 75e82f71
      Thirunarayanan Balathandayuthapani authored
      fts_drop_orphaned_tables() takes long time to remove the orphaned
      FTS tables. In order to reduce the time, do the following:
      
      - Traverse fil_system.space_list and construct a set of
      table_id,index_id of all FTS_*.ibd tablespaces.
      - Traverse the sys_indexes table and ignore the entry
      from the above collection if it exist.
      - Existing elements in the collection can be considered as
      orphaned fts tables. construct the table name from
      (table_id,index_id) and invoke fts_drop_tables().
      - Removed DICT_TF2_FTS_AUX_HEX_NAME flag usage from upgrade.
      - is_aux_table() in dict_table_t to check whether the given name
      is fts auxiliary table
      fts_space_set_t is a structure to store set of parent table id
      and index id
      - Remove unused FTS function in fts0fts.cc
      - Remove the fulltext index in row_format_redundant test case.
      Because it deals with the condition that SYS_TABLES does have
      corrupted entry and valid entry exist in SYS_INDEXES.
      75e82f71
    • Geert Hendrickx's avatar
      MDEV-23589: Portability: use `uname -n` instead of `hostname` · 1bb3ad6d
      Geert Hendrickx authored
      Closes PR #1663
      1bb3ad6d
  9. 09 Sep, 2020 5 commits