- 11 Jun, 2019 1 commit
-
-
Marko Mäkelä authored
-
- 10 Jun, 2019 1 commit
-
-
Marko Mäkelä authored
Some I/O functions and macros that are declared in os0file.h used to return a Boolean status code (nonzero on success). In MySQL 5.7, they were changed to return dberr_t instead. Alas, in MariaDB Server 10.2, some uses of functions were not adjusted to the changed return value. Until MDEV-19231, the valid values of dberr_t were always nonzero. This means that some code that was incorrectly checking for a zero return value from the functions would never detect a failure. After MDEV-19231, some tests for ALTER ONLINE TABLE would fail with cmake -DPLUGIN_PERFSCHEMA=NO. It turned out that the wrappers pfs_os_file_read_no_error_handling_int_fd_func() and pfs_os_file_write_int_fd_func() were wrongly returning bool instead of dberr_t. Also the callers of these functions were wrongly expecting bool (nonzero on success) instead of dberr_t. This mistake had been made when the addition of these functions was merged from MySQL 5.6.36 and 5.7.18 into MariaDB Server 10.2.7. This fix also reverts commit 40becbc3 which attempted to work around the problem.
-
- 07 Jun, 2019 2 commits
-
-
Sergei Petrunia authored
Make it visible
-
- 06 Jun, 2019 5 commits
-
-
Sergei Golubchik authored
option values now have to be edited in-place, instead of replacing an option with another one that has the same name but a new value.
-
Monty authored
-
Monty authored
- --disable-plugin-load or --skip-plugin-load will now reset plugin load list. Needed for future changes to mtr tests
-
Monty authored
- multiple usage of plugin-load-add and optimizer-switch are now included in generated config files
-
Thirunarayanan Balathandayuthapani authored
Problem: ======= fil_iterate() writes imported tablespace page0 as it is to discarded tablespace. Space id wasn't even changed. While opening the tablespace, tablespace fails with space id mismatch error. Fix: ==== fil_iterate() copies the page0 with discarded space id to imported tablespace.
-
- 05 Jun, 2019 3 commits
-
-
Zicheng Huang authored
fix MDEV-18750: failed to flashback large-size binlog file fix mysqlbinlog flashback failure caused by reading io_cache without MY_FULL_IO flag fix MDEV-18750: mysqlbinlog flashback failure on large binlog
-
Thirunarayanan Balathandayuthapani authored
- Use corrupt page id instead of whole block after releasing it from LRU list.
-
Sergei Petrunia authored
MDEV-19600: The optimizer should be able to produce rows=1 estimate for unique index with NULLable columns Modify best_access_path() to produce rows=1 estimate for null-rejecting lookups on unique NULL keys.
-
- 04 Jun, 2019 1 commit
-
-
Varun Gupta authored
MDEV-18015: Assertion `global_status_var.global_memory_used == 0' failed when using UDF , window functions and views Adding destructor for Group_bound_tracker to free Cached_item_str. The Cached_item for window functions are allocated on THD:mem_root but the Cached_item_str has value of type string which is allocated on the heap, so we need to call free() for it
-
- 03 Jun, 2019 8 commits
-
-
Sergei Golubchik authored
-
Monty authored
os_file_write_func() and os_file_read_no_error_handling_func() returned different result values depending on if UNIV_PFS_IO was defined or not. Other things: - Added some comments about return values for some functions
-
Monty authored
-
Monty authored
Wrong compiler warning from GCC: ‘snprintf’ output 2 or more bytes (assuming 4001) into a destination of size 4000
-
Monty authored
- --default-character-set can now be disabled in mysqldump - --skip-resolve can be be disabled in mysqld - mysql_client_test now resets global variables it changes - mtr couldn't handle [mysqldump] in config files (wrong regexp used)
-
Vladislav Vaintroub authored
-
Vladislav Vaintroub authored
-
Vladislav Vaintroub authored
Do not use TARGET_LINK_LIBRARIES(mysys mysys_ssl), this means that mysys_ssl is linked to practically everything.
-
- 31 May, 2019 2 commits
-
-
Vlad Lesin authored
The issue is that two MARIA_HA instances shares the same MARIA_STATUS_INFO object during UNION execution, so the second MARIA_HA instance state pointer MARIA_HA::state points to the MARIA_HA::state_save of the first MARIA instance. This happens in thr_multi_lock(...) { ... for (first_lock=data, pos= data+1 ; pos < end ; pos++) { ... if (pos[0]->lock == pos[-1]->lock && pos[0]->lock->copy_status) (pos[0]->lock->copy_status)((*pos)->status_param, (*first_lock)->status_param); ... } ... } Usually the state is restored from ha_maria::external_lock(...): \#0 _ma_update_status (param=0x6290000e6270) at ./storage/maria/ma_state.c:309 \#1 0x00005555577ccb15 in _ma_update_status_with_lock (info=0x6290000e6270) at ./storage/maria/ma_state.c:361 \#2 0x00005555577c7dcc in maria_lock_database (info=0x6290000e6270, lock_type=2) at ./storage/maria/ma_locking.c:66 \#3 0x0000555557802ccd in ha_maria::external_lock (this=0x61d0001b1308, thd=0x62a000048270, lock_type=2) at ./storage/maria/ha_maria.cc:2727 But _ma_update_status() does not take into account the case when MARIA_HA::status points to the MARIA_HA::state_save of the other MARIA_HA instance. The fix is to restore MARIA_HA::state in ha_maria::external_lock() after maria_lock_database() call for transactional tables.
-
Marko Mäkelä authored
-
- 30 May, 2019 2 commits
-
-
Sergey Vojtovich authored
Removed #! sequence from non-executable script.
-
Faustin Lammler authored
-
- 29 May, 2019 7 commits
-
-
Monty authored
-
Marko Mäkelä authored
-
Marko Mäkelä authored
-
Marko Mäkelä authored
-
Marko Mäkelä authored
row_search_mvcc(): Duplicate the logic of btr_pcur_move_to_next() so that an infinite loop can be avoided when advancing to the next page fails due to a corrupted page.
-
Marko Mäkelä authored
-
Marko Mäkelä authored
Also, --skip-innodb-buffer-pool-load-at-startup to avoid a crash in buf_load() due to loading pages that we are corrupting intentionally.
-
- 28 May, 2019 8 commits
-
-
Marko Mäkelä authored
At higher levels of innodb_force_recovery, the InnoDB transaction subsystem will not be set up at all. At slightly lower levels, recovered transactions will not be rolled back, and DDL operations could hang due to locks being held at all. Let us consistently refuse all writes if the predicate high_level_read_only holds. We failed to refuse DROP TABLE and DROP DATABASE. (Refusing DROP TABLE is a partial backport from MDEV-19570 in the 10.5 branch.)
-
Thirunarayanan Balathandayuthapani authored
- Replace mysql_version check with omit_virtual_cols() in ha_innobase::check_if_supported_inplace_alter().
-
Marko Mäkelä authored
-
Thirunarayanan Balathandayuthapani authored
- If one of the encryption threads already started the initialization of the tablespace then don't remove the other uninitialized tablespace from the rotation list. - If there is a change in innodb_encrypt_tables then don't remove the processed tablespace from rotation list.
-
Marko Mäkelä authored
LOCK_global_system_variables: Declare with MYSQL_PLUGIN_IMPORT
-
Eugene Kosov authored
-
Eugene Kosov authored
-
Eugene Kosov authored
-