- 24 Mar, 2019 1 commit
-
-
Olivier Bertrand authored
-
- 23 Mar, 2019 1 commit
-
-
Olivier Bertrand authored
Fixed by replacing sprinf by snprintf in ShowValue to avoid buffer overflow. It nows always use a buffer and returns int. modified: storage/connect/tabdos.cpp modified: storage/connect/tabfmt.cpp modified: storage/connect/value.cpp modified: storage/connect/value.h
-
- 03 Mar, 2019 1 commit
-
-
Olivier Bertrand authored
simple UPDATE statement from trigger or stored procedure Was not fixed when the same table was called several times with different modes. Fixed by checking if a new statement is compatible in the start_stmt function. It nows do the same checks than external_lock. modified: storage/connect/ha_connect.cc modified: storage/connect/ha_connect.h - typo modified: storage/connect/user_connect.cc
-
- 09 Feb, 2019 3 commits
-
-
Olivier Bertrand authored
-
Olivier Bertrand authored
-
Olivier Bertrand authored
modified: storage/connect/ha_connect.cc
-
- 07 Feb, 2019 4 commits
-
-
Sergei Golubchik authored
-
Sergei Golubchik authored
Followup for 8f5ea83f
-
Sergei Golubchik authored
-
Jan Lindström authored
MDEV-18426: Most of the mtr tests in the galera_3nodes suite fail
-
- 06 Feb, 2019 3 commits
-
-
Sergei Golubchik authored
-
Julius Goryavsky authored
Most of the mtr tests in the galera_3nodes suite fail for a variety of reasons with a variety of errors. Some tests simply need to add the missing "connection" lines to the result files, but many of them fail due to substantial errors that require reworking test files. This patch adds the missing "connection" lines to the result files and fixes several substantial flaws in the galera_3nodes suite tests and in the mtr framework service files, adapting the tests from galera_3nodes for the current version of MariaDB. https://jira.mariadb.org/browse/MDEV-18426
-
Alexey Botchkov authored
-
- 05 Feb, 2019 11 commits
-
-
Marko Mäkelä authored
-
Marko Mäkelä authored
i_s_innodb_mutexes_fill_table(): Use the C++ RAII pattern to ensure that the mutexes are released if an OK() macro returns from the function prematurely.
-
Marko Mäkelä authored
An uninitialized buffer is passed to row_sel_store_mysql_rec() but InnoDB may not initialize everything. Looks like it's ok in most cases but not always. The partially initialized buffer was later passed to ha_innobase::write_row() which reads random NULL bit values for virtual columns and random stuff happens. No test case for MariaDB 10.2 was found. The test case for MariaDB 10.3 involves partitioning, system versioning and the TRASH_ALLOC fill pattern 0xA5. Test case depends very much on the number and layout of columns. Think about 0xA5 byte for a NULL bit mask. row_sel_store_mysql_rec(): always initialize virtual columns NULL bit Closes #1144
-
Alexey Botchkov authored
The list of table constraints doesn't include foreign keys and uniques. So we replace DROP CONSTRAINT with DROP [FOREIGN] KEY in this case.
-
Sergei Golubchik authored
MDEV-16905 ASAN heap-use-after-free in __interceptor_strnlen / ... / TABLE::verify_constraints upon INSERT into temporary table with CHECK constraint just a test case
-
Sergei Golubchik authored
MDEV-18239 ASAN use-after-poison in process_str_arg / ... / mark_unsupported_func or unexpected ER_BAD_FIELD_ERROR upon ALTER TABLE renaming columns in a CHECK constraint during ALTER TABLE taints the original TABLE and requires m_need_reopen=1. In this case, though, renaming was redundant, so just don't do it.
-
Sergei Golubchik authored
CONNECT used to compute table file path as table->s->db_name + table->s->table_name instead of using table->s->path. This was incorrect and now it breaks for temporary tables during ALTER TABLE. Temporarily "fix" it by making CONNECT to use what it always used as a table name - the last component in the table->s->path.
-
Sergei Golubchik authored
no longer needed
-
Sergei Golubchik authored
MDEV-18083 ASAN heap-use-after-free in Field::set_warning_truncated_wrong_value upon inserting into temporary table remove TABLE_SHARE::error_table_name() and TABLE_SHARE::orig_table_name (that was allocated in a wrong memroot in this bug). instead, simply set TABLE_SHARE::table_name correctly.
-
Sergei Golubchik authored
remove thd->find_temporary_table()
-
Sergei Golubchik authored
-
- 04 Feb, 2019 3 commits
-
-
Elena Stepanova authored
-
Oleksandr Byelkin authored
-
Eugene Kosov authored
-
- 03 Feb, 2019 3 commits
-
-
Marko Mäkelä authored
Temporarily disable a test for commit 2175bfce because fixing it in 10.2 requires updating libmariadb.
-
Marko Mäkelä authored
buf_page_is_corrupted(): Read the global variable srv_checksum_algorithm only once in order to avoid a race condition when SET GLOBAL innodb_checksum_algorithm=...; is being executed concurrently with this function.
-
Olivier Bertrand authored
FOREIGN DATA WRAPPER to work with CONNECT engine modified: storage/connect/tabjdbc.cpp - Add a function to retrieve User variable value (DEVELOPMENT only) modified: storage/connect/ha_connect.cc modified: storage/connect/jsonudf.cpp modified: storage/connect/jsonudf.h modified: storage/connect/tabjdbc.cpp
-
- 02 Feb, 2019 6 commits
-
-
Vladislav Vaintroub authored
Store original charset during client authentication, and restore it for COM_RESET_CONNECTION
-
Marko Mäkelä authored
This is joint work with Oleksandr Byelkin.
-
Marko Mäkelä authored
wsrep_certification_rules: Define as a weak global symbol. While there are separate _embedded.a for statically linked storage engine plugins, there is only one ha_innodb.so which is supposed to work with both values of WITH_WSREP. The merge from 10.0-galera introduced a reference to a global variable that is only defined when the server is built WITH_WSREP. We must define that symbol as weak global, so that when a dynamically linked InnoDB or XtraDB is used with the embedded server (which never includes write-set replication patches), the variable will be read as 0, instead of causing a failure to load the InnoDB or XtraDB plugin.
-
Marko Mäkelä authored
-
Julius Goryavsky authored
This patch contains the port of the MDEV-18379 patch for 10.2 branch, but also includes a number of changes made within MDEV-17835, which are necessary for the normal operation of tests that use IPv6: 1) Currently, the three-node mtr suite for Galera (galera_3nodes) uses a separate IPv6 availability check using the "have_ipv6.inc" file. This check duplicates a more accurate check at suite.pm level, which can be used by including the file "check_ipv6.inc". This patch removes this discrepancy between suites. 2) Fixed numerous bugs in the SST scripts and in the mtr test files (galera_3nodes mtr suite) that prevented the use of Galera with IPv6 addresses. 3) Fixed flaws in the galera_3nodes mtr suite control scripts, because of which they could not work with mariabackup. 4) Fixed flaws in the rsync and mysqldump tests (for galera_3nodes mtr tests suite). These tests were not performed successfully without these fixes. 5) GAL-501 test in the galera_3nodes suite does not contain the option "--bind-address=::" that is needed for the test to work correctly with IPv6 (at least on some systems), since without it the server will not wait for connections on the IPv6 interface. https://jira.mariadb.org/browse/MDEV-18379 and partially https://jira.mariadb.org/browse/MDEV-17835
-
Marko Mäkelä authored
-
- 01 Feb, 2019 4 commits
-
-
Alexey Botchkov authored
No need to lowercase table names on case-sensitive file systems, as the cache won't contain the 'lowercased' table anyway. And it prevents the UPPERCASE.frm from being deleted.
-
Marko Mäkelä authored
Only starting with MariaDB 10.2, the .result file will echo "connect" and "connection" statements. There is no way how the test could have passed on debug builds after commit 1037edcb (which looks like an untested backport from a later version).
-
Marko Mäkelä authored
-
Thirunarayanan Balathandayuthapani authored
Problem: ======= Mariabackup incremental prepare creates new tablespace when it encounter new tablespace. It sets the intial size as FIL_IBD_FILE_INITIAL_SIZE (4). But while applying redo log, it tries to access 5th page and then it leads to out of tablespace error. Fix: === While parsing the redo log record, track FSP_SIZE in recv_spaces for the respective space id. Assign the recv_size for the tablespace when it is loaded. Extend the tablespace depends on recv_size while applying the redo log record.
-