- 22 Aug, 2019 1 commit
-
-
Alexander Barkov authored
-
- 20 Aug, 2019 1 commit
-
-
Jan Lindström authored
Problem was that wsrep thread argument was deleted on wrong place. Furthermore, scan method incorrectly used unsafe c_ptr(). Finally, fixed wsrep thread initialization to correctly set up thread_id and pass correct argument to functions and fix signess problem causing compiler errors.
-
- 19 Aug, 2019 5 commits
-
-
Julius Goryavsky authored
The execution of mtr in the Windows environment fails due to the fact that the new code from MDEV-18565 does not take into account the need to add the ".exe" extension to the names of executable files when searching for pre-requisites that are needed to run SST scripts (especially when using mariabackup) and when searching paths to some other Galera utilities. This patch fixes this flaw. Also adding paths to the PATH environment variable is now done with the correct delimiter character.
-
Julius Goryavsky authored
Some users and some scripts (for example, mysqld_multi.sh) use special option groups with names like [mysqld1], [mysqld2], ..., [mysqldN]. But SST scripts can't currently fully support these option groups. The only option group-related value it gets from the server is --defaults-group-suffix, if that option was set for mysqld when the server was started. However, the SST scripts does not get told by the server to read these option groups, so this means that the SST script will fail to read options like innodb-data-home-dir when it is in a option group like [mysqld1]...[mysqldN]. Moreover, SST scripts ignore many parameters that can be passed to them explicitly and cannot transfer them further, for example, to the input of mariabackup utility. Ideally, we want to transfer all the parameters of the original mysqld call to utilities such as mariabackup, however the SST script does not receive these parameters from the server and therefore cannot transfer them to mariabackup. To correct these shortcomings, we need to transfer to the scripts all of the parameters of the original mysqld call, and in the SST scripts themselves provide for the transfer all of these parameters to utilities such as mariabackup. To prevent these parameters from mixing with the script's own parameters, they should be transferred to SST script after the special option "--mysqld-args", followed by the string argument with the original parameters, as it received by the mysqld call at the time of launch (further all these parameters will be passed to mariabackup, for example). In addition, the SST scripts themselves must be refined so that they can read the parameters from the user-selected group, not just from the global mysqld configuration group. And also so that they can receive the parameters (which important for their work) as command-line arguments.
-
Marko Mäkelä authored
Datafile::find_space_id(): Fix a regression that was introduced in c0f47a4a for MDEV-12026. Because the function buf_page_is_corrupted() now determines the physical page size from the fsp_flags, our buffer size must agree with the fsp_flags. buf_page_is_corrupted(): Use the correct accessor fil_space_t::zip_size() for convering the tablespace flags. ROW_FORMAT=COMPRESSED files never use innodb_checksum_algorithm=full_crc32.
-
Alexander Barkov authored
-
Sergei Petrunia authored
Stabilize the test: - replace Rows column in EXPLAIN output for one query - Use EITS statistics for another query (in that testcase, the query must use LooseScan)
-
- 16 Aug, 2019 8 commits
-
-
Varun Gupta authored
Use convert_to_printable function to write only non-empty ranges to the optimizer trace
-
Marko Mäkelä authored
-
Marko Mäkelä authored
-
Marko Mäkelä authored
Optimize the test by dropping the table early and by using only one undo log thread, so that purge will be doing more useful work and less busy work of suspending and resuming the worker threads. The test used to cause shutdown timeout on 10.4 on buildbot, and for me locally when using --mysqld=--innodb-sync-debug. With these tweaks, it passes for me with --mysqld=--innodb-sync-debug.
-
Marko Mäkelä authored
It looks like the merge of MySQL 5.7.9 to MariaDB 10.2.2 conflicted with earlier changes that were made in MDEV-8588. row_search_mvcc(): If the page is corrupted, avoid invoking btr_cur_store_position(). The caller should not try to fetch the next record after a hard error.
-
Jan Lindström authored
-
Marko Mäkelä authored
No memory access violated the bounds of fake_extra_buf[], but GCC does not like the fact that the pointer fake_extra ends up pointing before the array. Allocate a dummy element at the start of fake_extra_buf[] in order to silence the warning.
-
Jan Lindström authored
There were two problems: (1) If user wanted same time zone information on all nodes in the Galera cluster all updates were not replicated as time zone information was stored on MyISAM tables. This is fixed on Galera by altering time zone tables to InnoDB while they are modified. (2) If user wanted different time zone information to nodes in the Galera cluster TRUNCATE TABLE for time zone tables was replicated by Galera destroying time zone information from other nodes. This is fixed on Galera by introducing new option for mysql_tzinfo_to_sql_symlink tool --skip-write-binlog to disable Galera replication while time zone tables are modified. Changes to be committed: modified: mysql-test/r/mysql_tzinfo_to_sql_symlink.result modified: mysql-test/suite/wsrep/r/mysql_tzinfo_to_sql_symlink.result new file: mysql-test/suite/wsrep/r/mysql_tzinfo_to_sql_symlink_skip.result new file: mysql-test/suite/wsrep/t/mysql_tzinfo_to_sql_symlink_skip.test modified: sql/tztime.cc This is 10.4 version of commit fa740888
-
- 15 Aug, 2019 11 commits
-
-
Marko Mäkelä authored
-
Marko Mäkelä authored
This triggered a "may be uninitialized" warning from GCC 9.2.1. The bogus-looking condition was added in 7e916bb8
-
Marko Mäkelä authored
-
Marko Mäkelä authored
-
Jan Lindström authored
-
Jan Lindström authored
-
Jan Lindström authored
We need to use wsrep_sync_wait=15 before selects to make sure that node has applied all inserts from other node.
-
Sujatha authored
Merge branch '10.2' into 10.3
-
Aleksey Midenkov authored
ins_node_create() does not initialize all members of que_common_t, so zero-init them with mem_heap_zalloc(). Handle out-of-memory correctly. Init insert_node->common.parent to fulfill the contract of thr usage. Free insert_node subtree at row_update_vers_insert() exit.
-
Alexander Barkov authored
-
Marko Mäkelä authored
-
- 14 Aug, 2019 10 commits
-
-
Sujatha authored
Problem: ======= DROP TABLE IF EXISTS was killed. The table still exists on the master but the DDL was still logged. Analysis: ========= During the execution of DROP TABLE command "ha_delete_table" call is invoked to delete the table. If the query is killed at this point, the kill command is not handled within the code. This results in two issues. 1) The table which is not dropped also gets written into the binary log. 2) The code continues further upon receiving 'KILL QUERY'. Fix: === Upon receiving the KILL command the query should stop its current execution. Tables which were successfully dropped prior to KILL command should be included in the binary log.
-
Aleksey Midenkov authored
-
Aleksey Midenkov authored
If there're multiple row versions in InnoDB, reading one row from PK may have O(N) complexity and reading from secondary keys may have O(N^2) complexity. The problem occurs when there are many pending versions of the same row, meaning that the primary key is the same, but a secondary key is different. The slowdown occurs when the secondary index is traversed. This patch creates a helper class for the function row_sel_get_clust_rec_for_mysql() which can remember and re-use cached_clust_rec & cached_old_vers so that rec_get_offsets() does not need to be called over and over for the clustered record. Corrections by Kevin Lewis <kevin.lewis@oracle.com> MDEV-20341 Unstable innodb.innodb_bug14704286 Removed test that tested the ability of interrupting long query which is not long anymore.
-
Marko Mäkelä authored
-
Aleksey Midenkov authored
Exclude SELECT and INSERT SELECT from vers_set_hist_part(). We cannot likewise exclude REPLACE SELECT because it may REPLACE into itself (and REPLACE generates history). INSERT also does not generate history, but we have history modification setting which might be interfered.
-
Aleksey Midenkov authored
Fix error code.
-
Marko Mäkelä authored
Adjust the test for full_crc32.
-
Thirunarayanan Balathandayuthapani authored
Problem: ======== Checksum for the encrypted temporary tablespace is not stored in the page for full crc32 format. Solution: ======== Made temporary tablespace in full crc32 format irrespective of encryption parameter. buf_tmp_page_encrypt(), buf_tmp_page_decrypt() - Both follows full_crc32 format.
-
Marko Mäkelä authored
-
Marko Mäkelä authored
This was broken in 2dbe472e
-
- 13 Aug, 2019 4 commits
-
-
Marko Mäkelä authored
-
Monty authored
Fixed the following issues: - Call info with HA_STATUS_CONST to ensure that (key_info->rec_per_key) contains latest data - Don't access rec_per_key if key_info->algorithm == HA_KEY_ALG_LONG_HASH is in this case the rec_per_key points to uninitialized data - Cleaned up code to avoid some extra 'if' and to make things more readable - Updated test cases that used 'old' rec_per_key values
-
Sergei Petrunia authored
Enable the rocksdb test suite. It now passes the valgrind tests.
-
Sergei Petrunia authored
-