- 23 May, 2020 9 commits
-
-
Monty authored
This patch is also pushed in 10.4. It's pushed separately in 10.5 as there are some additional cases in 10.5 to take care of. When merging if there is conflicts, use this code, not the 10.4 code.
-
Monty authored
-
Monty authored
-
Monty authored
- Don't use 'auto' to declare variables (lazy and makes code harder to read) - Fixed length to use correct type
-
Monty authored
-
Monty authored
I constantly store temporary 'var' directories as var2, var3 for comparisons and having them in citool is annyoing
-
Monty authored
-
Monty authored
This bug didn't cause any issues with current usage
-
Monty authored
-
- 22 May, 2020 3 commits
-
-
Marko Mäkelä authored
The GCC __atomic_ functions were removed already in commit 2b47f8ff, and starting with MariaDB Server 10.4, InnoDB relies mostly on C++11 std::atomic.
-
Marko Mäkelä authored
In mysql/mysql-server@17e497bdb793bc6b8360aa1c626dcd8bb5cfad1b MySQL 5.6.3 introduced innodb_checksum_algorithm=crc32 and implemented it for AMD64 using the SSE 4.2 instructions (incorrectly advertised as "SSE2" in a startup message). It was not implemented on IA-32 or on Windows. Since MariaDB 10.2.11 commit 2401d14e we make use of the SSE4.2 CRC-32C instructions on Windows on both IA-32 and AMD64. Let us be consistent and implement CRC-32C for IA-32 on all available platforms. GCC 4.8.2 and GCC 4.8.5 complain "error: PIC register clobbered by 'ebx' in 'asm'" so we will only enable this code for IA-32 starting with GCC 5. Also, we will clean up the implementation further after commit 1312b4eb. has_sse4_2(): Replaces ut_cpuid(). ut_crc32c_8(): Replaces ut_crc32_8_hw(). ut_crc32c_64(): Replaces ut_crc32_64_low_hw(), ut_crc32_64_hw(). ut_crc32_hw(): Rewrite. ut_crc32c_8_sw(): Replaces ut_crc32_8_sw(). ut_crc32c_64_sw(): Replaces ut_crc32_64_low_sw(), ut_crc32_64_sw(). ut_crc32_sw(): Rewrite. Avoid code bloat and do not unroll the ut_crc32c_64_sw() loop, because no benefit has been demonstrated. ut_crc32_init(): Only invoke ut_crc32_slice8_table_init() if no acceleration is available.
-
Marko Mäkelä authored
-
- 20 May, 2020 24 commits
-
-
Sergei Golubchik authored
-
Sujatha authored
-
Sujatha authored
MDEV-22451: SIGSEGV in __memmove_avx_unaligned_erms/memcpy from _my_b_write on CREATE after RESET MASTER Merge branch '10.3' into 10.4
-
Sujatha authored
MDEV-22451: SIGSEGV in __memmove_avx_unaligned_erms/memcpy from _my_b_write on CREATE after RESET MASTER Merge branch '10.2' into 10.3
-
Sujatha authored
MDEV-22451: SIGSEGV in __memmove_avx_unaligned_erms/memcpy from _my_b_write on CREATE after RESET MASTER Merge branch '10.1' into 10.2
-
Marko Mäkelä authored
-
Marko Mäkelä authored
-
Marko Mäkelä authored
-
Marko Mäkelä authored
ins_node_create_entry_list(): Create dummy empty tuples for corrupted or incomplete indexes, to avoid dereferencing a NULL dict_field_t::col pointer in row_build_index_entry_low(). This issue was found by a crash in the test gcol.innodb_virtual_basic when merging the fix to 10.5.
-
Sujatha authored
MDEV-22451: SIGSEGV in __memmove_avx_unaligned_erms/memcpy from _my_b_write on CREATE after RESET MASTER Analysis: ======== RESET MASTER TO # command deletes all binary log files listed in the index file, resets the binary log index file to be empty, and creates a new binary log with number #. When the user provided binary log number is greater than the max allowed value '2147483647' server fails to generate a new binary log. The RESET MASTER statement marks the binlog closure status as 'LOG_CLOSE_TO_BE_OPENED' and exits. Statements which follow RESET MASTER try to write to binary log they find the log_state != LOG_CLOSED and proceed to write to binary log cache and it results in crash. Fix: === During MYSQL_BIN_LOG open, if generation of new binary log name fails then the "log_state" needs to be marked as "LOG_CLOSED". With this further statements will find binary log as closed and they will skip writing to the binary log.
-
Rasmus Johansson authored
-
Rasmus Johansson authored
-
Rasmus Johansson authored
-
Rasmus Johansson authored
-
Rasmus Johansson authored
-
Marko Mäkelä authored
-
Marko Mäkelä authored
-
Marko Mäkelä authored
-
Thirunarayanan Balathandayuthapani authored
prepare_inplace_alter_table_dict(): In the error handling, relax a debug assertion for the case that we did not execute dict_stats_wait_bg_to_stop_using_table() yet.
-
Alexander Barkov authored
Problem: When handling a query like this: VALUES ('') UNION SELECT _utf16 0x0020 COLLATE utf16_bin; Type_handler_string_result::Item_hybrid_func_fix_attributes() tried to apply character set conversion Item_type_holder, which causes a crash on DBUG_ASSERT(0) inside Item_type_holder::val_str(). Fix: Overriding Item_type_holder's methods to avoid this, as follows: bool const_item() const { return false; } bool is_expensive() { return true; }
-
Marko Mäkelä authored
For no good reason, innodb_encryption_threads was limited to 4,294,967,295. Expectedly, the server would crash if such an insane value was specified. Let us limit the maximum to 255. The encryption threads are not doing much useful work. They are basically only dirtying pages by performing dummy writes via the redo log. The encryption key rotation or the in-place addition or removal of encryption will take place in the page cleaner. In a quick test on a 20-core CPU (40 threads in total), the sweet spot on an otherwise idle server seemed to be innodb_encryption_threads=16 for the test encryption.encrypt_and_grep. The new limit 255 should be more than enough for even bigger servers.
-
Yury Kurlykov authored
fts_indexes field in fts_update_t never used. So replace fts_update_t with doc_id_t in the code
-
Marko Mäkelä authored
-
Jan Lindström authored
MDEV-18838 : galera.galera_toi_truncate: Test failure: mysqltest: query 'reap' succeeded - should have failed with errno 1213 Test cleanup.
-
- 19 May, 2020 4 commits
-
-
Andrei Elkin authored
This is a new test from upstream that did not expect the correct value of the command slot of the Dump thread when the latter gets killed. The test is made to expect "Killed" string as the command in show-processlist as it is supposed to when a thread gets killed.
-
Marko Mäkelä authored
-
Rasmus Johansson authored
-
Rasmus Johansson authored
-