1. 12 Mar, 2019 2 commits
    • Sergei Golubchik's avatar
      MDEV-17070 Table corruption or Assertion `table->file->stats.records > 0 ||... · 69abd437
      Sergei Golubchik authored
      MDEV-17070 Table corruption or Assertion `table->file->stats.records > 0 || error' or Assertion `!is_set() || (m_status == DA_OK_BULK && is_bulk_op())' failed upon actions on temporary table
      
      This was caused by a combination of factors:
      * MyISAM/Aria temporary tables historically never saved the state
        to disk (MYI/MAI), because the state never needed to persist
      * certain ALTER TABLE operations modify the original TABLE structure
        and if they fail, the original table has to be reopened to
        revert all changes (m_needs_reopen=1)
      
      as a result, when ALTER fails and MyISAM/Aria temp table gets reopened,
      it reads the stale state from the disk.
      
      As a fix, MyISAM/Aria tables now *always* write the state to disk
      on close, *unless* HA_EXTRA_PREPARE_FOR_DROP was done first. And
      the server now always does HA_EXTRA_PREPARE_FOR_DROP before dropping
      a temporary table.
      69abd437
    • Sergei Golubchik's avatar
      7025a51a
  2. 11 Mar, 2019 8 commits
    • Alexey Botchkov's avatar
      MDEV-18886 JSON_ARRAY() does not recognise JSON argument. · acb4a872
      Alexey Botchkov authored
      JSON_ARRAY and JSON_OBJECT functions with no arguments now get the
      connection charset. Item_func_convert_charset returns the correct
      is_json() flag.
      acb4a872
    • Marko Mäkelä's avatar
      MDEV-18878: Correct a condition · 28e713dc
      Marko Mäkelä authored
      Initialize node->trx_id before checking if a table can be skipped.
      28e713dc
    • Marko Mäkelä's avatar
      Try to address MDEV-17745 · 21975280
      Marko Mäkelä authored
      wait_all_purged.inc: Wait for 60 seconds instead of 30 seconds.
      Purge can be slow on buildbot, especially in ASAN-instrumented builds.
      21975280
    • Marko Mäkelä's avatar
      MDEV-18878: Slimmer purge in non-debug builds · 6e767046
      Marko Mäkelä authored
      purge_node_t::in_progress: Replaces purge_node_t::done.
      Only present in debug builds.
      
      purge_node_t::start(): Moved from the start of row_purge_step().
      
      purge_node_t::end(): Replaces row_purge_end().
      
      trx_purge_attach_undo_recs(): Omit a check from non-debug builds.
      6e767046
    • Marko Mäkelä's avatar
      MDEV-18878 Purge: Optimize away futile table lookups · 1ab049e5
      Marko Mäkelä authored
      If a table has been dropped, rebuilt, or its tablespace has been
      discarded or the table is corrupted, it does not make sense to
      look up that table again while purging old undo log records.
      
      purge_node_t::purge_node_t(): Replaces row_purge_node_create().
      
      que_common_t::que_common_t(): Constructor.
      
      row_import_update_index_root(): Remove the constant parameter
      dict_locked=true, and update the table->def_trx_id in the cache.
      
      purge_node_t::unavailable_table_id: The latest unavailable table ID,
      to avoid future lookups.
      
      purge_node_t::def_trx_id: The latest modification of the table
      identified by unavailable_table_id, or TRX_ID_MAX.
      
      purge_node_t::is_skipped(): Determine if a table should be skipped.
      
      purge_node_t::skip(): Note that a table should be skipped.
      1ab049e5
    • Marko Mäkelä's avatar
      Merge 10.1 into 10.2 · 3ea49d35
      Marko Mäkelä authored
      3ea49d35
    • Eugene Kosov's avatar
      MDEV-17703 Add WITH_UBSAN switch to CMake similar to WITH_ASAN · 2a2ab121
      Eugene Kosov authored
      This can be useful:
      UBSAN_OPTIONS=log_path=/some/path
      
      clang users may want to increase stack size in include/my_pthread.h or enable
      some optimizations
      2a2ab121
    • Marko Mäkelä's avatar
      Clean up mysql-test/suite/galera/disabled.def again · 04150218
      Marko Mäkelä authored
      Clean up after commit 0957d257
      which introduced some disorder (unsorted or duplicated test names).
      04150218
  3. 09 Mar, 2019 6 commits
  4. 08 Mar, 2019 3 commits
  5. 07 Mar, 2019 10 commits
  6. 06 Mar, 2019 11 commits