- 23 Mar, 2019 1 commit
-
-
Sachin authored
-
- 22 Mar, 2019 7 commits
-
-
Andrey authored
-
Marko Mäkelä authored
-
Alexander Barkov authored
-
Marko Mäkelä authored
MDEV-18224 MTR's internal check of the test case 'innodb.recovery_shutdown' failed due to extra #sql-ib*.ibd files The test innodb.recovery_shutdown would occasionally fail, because recovered incomplete transactions would be conflicting with DROP TABLE, causing the background drop table queue to be invoked. Add a slow shutdown before dropping the tables, so that the recovered transactions will be rolled back. Starting with MDEV-14705, normal shutdown would abort the rollback of recovered transactions.
-
Marko Mäkelä authored
-
Sachin authored
Add test case for MDEV-18901 as MDEV-18967 and MDEV-18922 solves this issue
-
Alexander Barkov authored
-
- 21 Mar, 2019 18 commits
-
-
FaramosCZ authored
The file will be closed on line 540
-
Marko Mäkelä authored
-
Sachin authored
Update system versioning fields before generated columns for left out fill_record
-
Marko Mäkelä authored
Make buf_pool_t::io_buf_t() a more proper class. buf_pool_t::io_buf_t::io_buf_t(): Silence the GCC 8 -Wclass-memaccess warning for initializing slots[], which no longer is a plain old datatype (POD) due to the std::atomic member.
-
Marko Mäkelä authored
-
Marko Mäkelä authored
-
Marko Mäkelä authored
-
Marko Mäkelä authored
-
Marko Mäkelä authored
-
Marko Mäkelä authored
-
Marko Mäkelä authored
-
Marko Mäkelä authored
-
Marko Mäkelä authored
trx_rseg_header_create(): Return the block descriptor, and remove the redundant trx_rsegf_get_new() call. Apparently the idea of that call was some kind of encapsulation or abstraction, to discourage the direct use of the constant TRX_RSEG. This also removes the trx_purge_initiate_truncate() local variable rseg_header, which was only used in debug builds.
-
Marko Mäkelä authored
-
Marko Mäkelä authored
-
Marko Mäkelä authored
-
Marko Mäkelä authored
-
Alexander Barkov authored
Tests for MDEV-18892 failed, because of extra 'Prepare' and 'Close stmt' entries in the output. Filtering out PS related entries (where it is necessary).
-
- 20 Mar, 2019 8 commits
-
-
Eugene Kosov authored
Field::is_equal(): treat old type and new one without AUTO_INCREMENT as equal Closes #1208
-
Sergei Golubchik authored
let mysql_upgrade to work even when innodb_index_stats or innodb_table_stats are missing. (mysql_upgrade knows to ignore "unknown table" errors)
-
Marko Mäkelä authored
-
Marko Mäkelä authored
-
Marko Mäkelä authored
row_ins_foreign_fill_virtual(): Construct update->old_vrow with ROW_COPY_DATA instead of ROW_COPY_POINTERS. With the latter, the object would be pointing to a buffer pool page frame. That page frame can become stale and invalid as soon as row_ins_foreign_check_on_constraint() invokes mtr_t::commit(). Most of the time, the pointer target is not going to be overwritten by anything, and everything appears to work correctly. Buffer pool page replacement is highly unlikely, and any pessimistic operation that would overwrite the old location of the record is only slightly more likely. It is not known whether there is an actual bug. This came up while diagnosing MDEV-18879 in MariaDB 10.3.
-
Marko Mäkelä authored
row_ins_foreign_check_on_constraint(): When constructing cascade->historical_row for tables WITH SYSTEM VERSIONING, use the appropriate mode ROW_COPY_DATA, because the pointers will be stale after mtr_commit() is invoked.
-
Alexander Barkov authored
Adding an intermediate volatile variable to avoid using co-processor registers on some platforms (e.g. 32-bit x86). This change makes test results stable accross all platforms.
-
Marko Mäkelä authored
The MDEV-17262 commit 26432e49 was skipped. In Galera 4, the implementation would seem to require changes to the streaming replication. In the tests archive.rnd_pos main.profiling, disable_ps_protocol for SHOW STATUS and SHOW PROFILE commands until MDEV-18974 has been fixed.
-
- 19 Mar, 2019 6 commits
-
-
Marko Mäkelä authored
-
Marko Mäkelä authored
Access purge_sys.rseg directly, instead of obscuring it with a parameter.
-
Marko Mäkelä authored
MariaDB Server 10.0 and 10.1 support non-indexed virtual columns, which are hidden from the storage engine. Starting with MDEV-5800 in MariaDB 10.2.2, the virtual columns are visible to storage engines. calc_row_difference(): Follow up the MDEV-17199 fix, which forgot to increment num_v when skipping virtual columns in tables that were created before MariaDB 10.2.2. This caused a corruption of the update vector when an updated persistent column is preceded by virtual columns.
-
Marko Mäkelä authored
The macro innobase_is_v_fld() turns out to be equivalent with the opposite of Field::stored_in_db(). Remove the macro and invoke the member function directly. innodb_base_col_setup_for_stored(): Simplify a condition to only check Field::vcol_info. innobase_create_index_def(): Replace some redundant code with DBUG_ASSERT().
-
Marko Mäkelä authored
MariaDB before MDEV-5800 in version 10.2.2 did not support indexed virtual columns. Non-persistent virtual columns were hidden from storage engines. Only starting with MDEV-5800, InnoDB would create internal metadata on virtual columns. On TRUNCATE TABLE, an old .frm file from before MDEV-5800 may be used as the table schema. When the table is being re-created by InnoDB, the old schema must be used. That is, we may hide the existence of virtual columns from InnoDB. create_table_check_doc_id_col(): Remove the assertion that failed. This function can actually correctly deal with virtual columns that could have been created before MariaDB 10.2.2 introduced MDEV-5800. create_table_info_t::create_table_def(): Do not create metadata for virtual columns if the table definition was created before MariaDB 10.2.2.
-
Marko Mäkelä authored
This bug was introduced by MDEV-12288, which made InnoDB use a single undo log for persistent transactions, instead of maintaining separate insert_undo and update_undo logs. trx_undo_reuse_cached(): Initialize the TRX_UNDO_PAGE_TYPE after reusing a cached undo log page for undo log. Failure to do so can cause trx_undo_mem_create_at_db_start() to misclassify new undo log records as TRX_UNDO_INSERT. This in turn would trigger an assertion failure in trx_roll_pop_top_rec_of_trx() due to undo==insert.
-