- 16 Jan, 2018 4 commits
-
-
Alexander Barkov authored
1. Moving the following methods from THD to Item_change_list: nocheck_register_item_tree_change() check_and_register_item_tree_change() rollback_item_tree_changes() as they work only with the "change_list" member and don't require anything else from THD. 2. Deriving THD from Item_change_list This change will help to fix "MDEV-14603 signal 11 with short stacktrace" easier.
-
Marko Mäkelä authored
innobase_start_or_create_for_mysql(): Only start the data dictionary and transaction subsystems in normal server startup and during mariabackup --export.
-
Marko Mäkelä authored
btr_cur_update_in_place(): Read block->index only once, so that it cannot change to NULL after the first read. When block->index != NULL, it must be equal to index.
-
Marko Mäkelä authored
btr_cur_update_in_place(): The call rw_lock_x_lock(ahi_latch) must of course be inside the if (ahi_latch) condition. This is a mistake that I made when backporting the fix-under-development from 10.3.
-
- 15 Jan, 2018 8 commits
-
-
Sergei Petrunia authored
-
Marko Mäkelä authored
This race condition is a regression caused by MDEV-12121. btr_cur_update_in_place(): Determine block->index!=NULL only once in order to determine whether an adaptive hash index bucket needs to be exclusively locked and unlocked. If we evaluated block->index multiple times, and the adaptive hash index was disabled before we locked the adaptive hash index, then we would never release the adaptive hash index bucket latch, which would eventually lead to InnoDB hanging.
-
Marko Mäkelä authored
-
Marko Mäkelä authored
-
Marko Mäkelä authored
-
Sergei Petrunia authored
-
Marko Mäkelä authored
innodb.truncate_inject: Replacement for innodb_zip.wl6501_error_1 Note: unlike MySQL, in some cases TRUNCATE does not return an error in MariaDB. This should be fixed in the scope of MDEV-13564 or similar.
-
Marko Mäkelä authored
-
- 14 Jan, 2018 1 commit
-
-
Eugene Kosov authored
Speed up compilation Standard C++ headers contribute a lot to compilation time. Avoid algorithm and sstream in frequently used headers.
-
- 13 Jan, 2018 2 commits
-
-
Marko Mäkelä authored
This is a regression that was introduced in MySQL 5.7.6 in https://github.com/mysql/mysql-server/commit/19855664de0245ff24e0753dc82723fc4e2fb7a5 fil_node_open_file(): Use proper 64-bit arithmetics for truncating size_bytes to a multiple of a file extent size.
-
Monty authored
- Removed extra set -x -v used for debugging - Fixed that that gcc version tests works for gcc 7
-
- 12 Jan, 2018 6 commits
-
-
Sergei Petrunia authored
-
Sergei Petrunia authored
-
Sergei Petrunia authored
-
Varun Gupta authored
-
Sergei Petrunia authored
-
Sergei Petrunia authored
- Make Rdb_binlog_manager::unpack_value to not have a stack overrun when it is reading invalid data (which it currently does as we in MariaDB do not store binlog coordinates under BINLOG_INFO_INDEX_NUMBER, see comments in MDEV-14892 for details). - We may need to store these coordinates in the future, so instead of removing the call of this function, let's make it work properly for all possible inputs.
-
- 11 Jan, 2018 7 commits
-
-
Monty 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
The warning was originally added in commit c6766305 (MySQL 4.1.12, 5.0.3) to trace claimed undo log corruption that was analyzed in https://lists.mysql.com/mysql/176250 on November 9, 2004. Originally, the limit was 20,000 undo log headers or transactions, but in commit 9d6d1902 in MySQL 5.5.11 it was increased to 2,000,000. The message can be triggered when the progress of purge is prevented by a long-running transaction (or just an idle transaction whose read view was started a long time ago), by running many transactions that UPDATE or DELETE some records, then starting another transaction with a read view, and finally by executing more than 2,000,000 transactions that UPDATE or DELETE records in InnoDB tables. Finally, when the oldest long-running transaction is completed, purge would run up to the next-oldest transaction, and there would still be more than 2,000,000 transactions to purge. Because the message can be triggered when the database is obviously not corrupted, it should be removed. Heavy users of InnoDB should be monitoring the "History list length" in SHOW ENGINE INNODB STATUS; there is no need to spam the error log.
-
- 10 Jan, 2018 8 commits
-
-
Vladislav Vaintroub authored
-
Vladislav Vaintroub authored
-
Monty authored
- Skip 'clean' if not a git repository (Good for tar files) - Add configuration for ASAN builds
-
Oleksandr Byelkin authored
Roll back to most general duplicate removing strategi in case of different stratagies for one position.
-
Marko Mäkelä authored
Replace most occurrences of the REFMAN macro. For some pages there is no replacement yet.
-
Marko Mäkelä authored
recv_log_recover_10_3(): Determine if a log from MariaDB 10.3 is clean. recv_find_max_checkpoint(): Allow startup with a clean 10.3 redo log. srv_prepare_to_delete_redo_log_files(): When starting up with a 10.3 log, display a "Downgrading redo log" message instead of "Upgrading".
-
Marko Mäkelä authored
Backport the fix from 10.0.33 to 5.5, in case someone compiles XtraDB with -DUNIV_LOG_ARCHIVE
-
Marko Mäkelä authored
The XtraDB option innodb_track_changed_pages causes the function log_group_read_log_seg() to be invoked even when recv_sys==NULL, leading to the SIGSEGV. This regression was caused by MDEV-11027 InnoDB log recovery is too noisy
-
- 09 Jan, 2018 4 commits
-
-
Vladislav Vaintroub authored
is set to ERR This matches gcc/clang handling.
-
Igor Babaev authored
with recursive reference in subquery If a recursive CTE uses a subquery with recursive reference then the virtual function reset() must be called after each iteration performed at the execution of the CTE.
-
Jan Lindström authored
innodb/buf_LRU_get_free_block Add debug instrumentation to produce error message about no free pages. Print error message only once and do not enable innodb monitor. xtradb/buf_LRU_get_free_block Add debug instrumentation to produce error message about no free pages. Print error message only once and do not enable innodb monitor. Remove code that does not seem to be used. innodb-lru-force-no-free-page.test New test case to force produce desired error message.
-
Marko Mäkelä authored
row_insert_for_mysql(): Remove some duplicated code
-