- 28 Sep, 2020 9 commits
-
-
Igor Babaev authored
This bug happened when the HEAP temporary table used for the derived table created for a derived handler of a remote engine of the federated type became full and was converted to an Area table. For this conversion the tmp_table_param parameter must be always taken from the select_unit object created for the result of the derived table.
-
Sujatha authored
-
Sujatha authored
-
Jan Lindström authored
Fix typo.
-
Daniele Sciascia authored
Require galera_have_debug_sync.inc and re-record to include new variables exposed by latest galera library.
-
Sujatha authored
-
Jan Lindström authored
This will update galera_3nodes/disabled.def.
-
Vladislav Vaintroub authored
Make open_table() fail if sequence should be opened, but it turns out to be locked view.
-
Sujatha authored
MDEV-22330: mysqlbinlog stops with an error Don't know how to handle column type: 255 meta: 4 (0004) Analysis: ======== "mysqlbinlog -v" option will reconstruct row events and display them as commented SQL statements. If this option is given twice, the output includes comments to indicate column data types and some metadata. `log_event_print_value` is the function reponsible for printing values and their types. This function doesn't handle GEOMETRY type. Hence the above error gets printed. Fix: === Add support for GEOMETRY datatype.
-
- 25 Sep, 2020 12 commits
-
-
Monty authored
The original code was correct. mysql_upgrade calls the mysql client to talk with MariaDB. It doesn't call itself!
-
Thirunarayanan Balathandayuthapani authored
- During insertion of clustered inde, InnoDB does the check for foreign key constraints. It rebuild the tuple based on foreign column names when there is no foreign index. While rebuilding, InnoDB should ignore the dropped columns.
-
Monty authored
The original code was correct. mysql_upgrade calls the mysql client to talk with MariaDB. It doesn't call itself!
-
Monty authored
Part of review of 10.4 code by Sergei. Other things: - Changed return type if is_active() from my_bool to bool as this is only used by C++ code.
-
Monty authored
When maria_drop_all_indexes() reset the key files, it didn't flush the page cache. This confused the cache as there where old key blocks marked with LSN in it and repair tried to overwrite these with PLAIN blocks which is not allowed.
-
Monty authored
Fixes also: MDEV-22674 Server crash in compare_bin ... restore_table_state_after_repair The bug was that the 'can_enable_index' variable in MyISAM and Aria was not properly set and reset for bulk insert. Because of this, insert...select was trying to recreate indexes while another thread was using it, causing crashes in page cache.
-
Monty authored
The reason was that during MyISAM parallel repair two threads used the same changed TABLE object to compute virtual columns Fixed by adding a mutex in compute_vcols()
-
Monty authored
The problem was that the server was calling virtual functions on a record that was not initialized with new data. This happened when fill_record() was aborted in the middle because an error in save_val() or save_in_field()
-
Monty authored
MDEV-17109 rpl.rpl_parallel_retry fails in buildbot with timeout I was not able to prove that this fix works, but at least it simplifies the problem as it removes some possible timing issues.
-
Monty authored
MDEV-21953 deadlock between BACKUP STAGE BLOCK_COMMIT and parallel replication Fixed by partly reverting MDEV-21953 to put back MDL_BACKUP_COMMIT locking before log_and_order. The original problem for MDEV-21953 was that while a thread was waiting in for another threads to commit in 'log_and_order', it had the MDL_BACKUP_COMMIT lock. The backup thread was waiting to get the MDL_BACKUP_WAIT_COMMIT lock, which blocks all new MDL_BACKUP_COMMIT locks. This causes a deadlock as the waited-for thread can never get past the MDL_BACKUP_COMMIT lock in ha_commit_trans. The main part of the bug fix is to release the MDL_BACKUP_COMMIT lock while a thread is waiting for other 'previous' threads to commit. This ensures that no transactional thread keeps MDL_BACKUP_COMMIT while waiting, which ensures that there are no deadlocks anymore.
-
Monty authored
This ensures that all tests can be run. Before this patch some encryption test failed
-
Monty authored
This is to ensure code in 10.4 and 10.5 is logically identical for this variable
-
- 24 Sep, 2020 2 commits
-
-
mkaruza authored
When process is aborted WSREP deinitialization and memory cleanup is not properly handled. Other reported leaks are in Galera library and should be fixed there.
-
Daniel Black authored
Appoligies, had a dirty branch before pushing: This reverts commit 053653a2. This reverts commit 0ff89780. This reverts commit 85b08597. This reverts commit f3f45e46. This reverts commit a470b357. This reverts commit f8b8d202. This reverts commit 6b6f066f. This reverts commit a701e9e6. This reverts commit c1698386.
-
- 23 Sep, 2020 9 commits
-
-
Daniel Black authored
-
Daniel Black authored
Leave debian/additions/mysqlreport as #!/usr/bin/perl Acknowledge that `env perl` is a hack, a complete fix needs to consider which path perl is at and insert into these scripts. The usefulness of these scripts is questionable.
-
-
Vladislav Vaintroub authored
Fixes (rare) case when mysql-test is included into "noinstall" ZIP.
-
Marko Mäkelä authored
Passing a null pointer to a nonnull argument is not only undefined behaviour, but it also grants the compiler the permission to optimize away further checks whether the pointer is null. GCC -O2 at least starting with version 8 may do that, potentially causing SIGSEGV.
-
Marko Mäkelä authored
Shifting a 16-bit type by 16 bits is undefined behaviour. The result is at least 32 bits, so let us cast the shift operand to a wider type before shifting.
-
Marko Mäkelä authored
For some reason, adding -fsanitize=undefined (cmake -DWITH_UBSAN=ON) to the compilation flags will cause even more warnings to be emitted. The warnings do look bogus, but the code can be simplified.
-
Marko Mäkelä authored
For some reason, adding -fsanitize=undefined (cmake -DWITH_UBSAN=ON) to the compilation flags will cause even more warnings to be emitted. The warning was a bogus one: tests/mysql_client_test.c:8632:22: error: '%d' directive writing between 1 and 11 bytes into a region of size 9 [-Werror=format-overflow=] 8632 | sprintf(field, "c%d int", i); | ^~ tests/mysql_client_test.c:8632:20: note: directive argument in the range [-2147483648, 999] The warning does not take into account that the lower bound of the variable actually is 0. But, we can help the compiler and use an unsigned variable.
-
Marko Mäkelä authored
Port some CMake tweaks of commit 4adc1269 from 10.5.
-
- 22 Sep, 2020 8 commits
-
-
Marko Mäkelä authored
-
Marko Mäkelä authored
-
Oleksandr Byelkin authored
-
Marko Mäkelä authored
-
Marko Mäkelä authored
-
Marko Mäkelä authored
-
Marko Mäkelä authored
It turns out that we must check for DISCARD TABLESPACE both when the table is being rebuilt and when the AUTO_INCREMENT value of the table is being added. This was caught by the test innodb.alter_missing_tablespace. Somehow I failed to run all tests. Sorry!
-
Marko Mäkelä authored
The statement ALTER TABLE...DISCARD TABLESPACE is problematic, because its designed purpose is to break the referential integrity of the data dictionary and make a table point to nowhere. ha_innobase::commit_inplace_alter_table(): Check whether the table has been discarded. (This is a bit late to check it, right before committing the change.) Previously, we performed this check only in a specific branch of the function commit_set_autoinc(). Note: We intentionally allow non-rebuilding ALTER TABLE even if the tablespace has been discarded, to remain compatible with MySQL. (See the various tests with "wl5522" in the name, such as innodb.innodb-wl5522.) The test case would crash starting with 10.3 only, but it does not hurt to minimize the code and test difference between 10.2 and 10.3.
-