- 22 Jul, 2019 3 commits
-
-
Nikita Malyavin authored
This is the race between DELETE and INSERT (or other any two operations accessing to the table). What should happen in good case: 1. ALTER TABLE is issued. vc_templ->default_rec is initialized with temporary share's default_fields 2. temporary share is freed, but datadict is still there, with garbage in vc_templ->default_rec 3. DELETE is issued. It is first after ALTER TABLE finished. 4. ha_innobase::open() is called, ib_table->get_ref_count() should be one 5. we reinitialize vc_templ, so no garbage anymore What actually happens: 3. DELETE is issued. 4. ha_innobase::open() is called and ib_table->get_ref_count() is 1 5. INSERT (or SELECT etc.) is issued in parallel 6. ha_innobase::open() is called and ib_table->get_ref_count() is 1 7. we check ib_table->get_ref_count() and it is 2 in both threads when we want reinitialize vc_templ 8. garbage is there Fix: * Do not store pointers to SHARE memory in table dict, copy it instead. * But then we don't need to refresh it each time when refcount=1.
-
Nikita Malyavin authored
-
Julius Goryavsky authored
The test for the wsrep_info plugin needs the same flexible wsrep version checking as the tests for Galera (continuation of MDEV-18565 task)
-
- 21 Jul, 2019 1 commit
-
-
Sergei Golubchik authored
-
- 20 Jul, 2019 1 commit
-
-
Oleksandr Byelkin authored
-
- 19 Jul, 2019 7 commits
-
-
Sergei Petrunia authored
Make it to work on Windows, too.
-
Sergei Petrunia authored
Rewrite the unportable sed/shell code in Perl.
-
Eugene Kosov authored
Store REDZONE_SIZE poined bytes before every allocated chunk of memory
-
Marko Mäkelä authored
-
Marko Mäkelä authored
The embedded server does not HAVE_PSI_STAGE_INTERFACE.
-
Eugene Kosov authored
row_merge_read_clustered_index(): fix one more place with buf and merge_buf[i]
-
Marko Mäkelä authored
-
- 18 Jul, 2019 12 commits
-
-
Marko Mäkelä authored
-
Marko Mäkelä authored
The results are nondeterministic on MariaDB Server 10.1.
-
Marko Mäkelä authored
-
Eugene Kosov authored
row_merge_read_clustered_index(): make buf always equals to merge_buf[i]
-
Marko Mäkelä authored
MDEV-20094 was filed for the unexpected result differences for the test innodb.check_ibd_filesize.
-
Marko Mäkelä authored
-
Marko Mäkelä authored
-
Marko Mäkelä authored
-
Marko Mäkelä authored
-
Julius Goryavsky authored
-
Marko Mäkelä authored
-
Julius Goryavsky authored
Set the garbd_exe variable to empty string to avoid warning about an uninitialized variable when wsrep_provider is not initialized correctly, set to 'none' or when wsrep is switched off
-
- 17 Jul, 2019 1 commit
-
-
Julius Goryavsky authored
Currently, running mtr with an incorrect (for example, new or obsolete) version of wsrep_provider (for example, with the 26 version of libgalera_smm.so) leads to the failure of tests in several suites with vague error diagnostics. As for the galera_3nodes suite, the mtr also does not effectively check all the prerequisites after merge with MDEV-18426 fixes. For example, tests that using mariabackup do not check for presence of ss and socat/nc. This is due to improper handling of relative paths in mtr scripts. In addition, some tests in different suites can be run without setting the environment variables such as MTR_GALERA_TFMT, XBSTREAM, and so on. To eliminate all these issues, this patch makes the following changes: 1. Added auxiliary wsrep_mtr_check utility (which located in the mysql-test/lib/My/SafeProcess subdirectory), which compares the versions of the wsrep API that used by the server and by the wsrep provider library, and it does this comparison safely, without accessing the API if the versions do not match. 2. All checks related to the presence of mariabackup and utilities that necessary for its operation transferred from the local directories of different mtr suites (from the suite.pm files) to the main suite.pm file. This not only reduces the amount of code and eliminates duplication of identical code fragments, but also avoids problems due to the inability of mtr to consider relative paths to include files when checking skip combinations. 3. Setting the values of auxiliary environment variables that are necessary for Galera, SST scripts and mariabackup (to work properly) is moved to the main mysql-test-run.pl script, so as not to duplicate this code in different suites, and to avoid partial corrections of the same errors for different suites (while other suites remain uncorrected). 4. Fixed duplication of the have_file_key_management.inc and have_filekeymanagement.inc files between different suites, these checks are also transferred to the top level. 5. Added garbd presence check and garbd path variable. https://jira.mariadb.org/browse/MDEV-18565
-
- 16 Jul, 2019 6 commits
-
-
Sergei Petrunia authored
It uses slave_gtid_info=optimized which is not supported in MariaDB
-
Sergei Petrunia authored
It requires @@enable_blind_replace which MariaDB doesn't support
-
Sergei Petrunia authored
It requires slave_exec_mode='SEMI_STRICT'
-
Sergei Petrunia authored
-
Sergei Petrunia authored
Fix this patch (two csets before): Disable rocksdb.shutdown test It was introduced by this patch in fb/mysql-5.6: Author: Yoshinori Matsunobu <yoshinori@fb.com> Date: Mon Jun 10 14:09:28 2019 -0700 Extending SHUTDOWN query to support read_only/aborting Summary: This diff extends SHUTDOWN query to support the following features. - Aborting with any specified exit code (range is 0..255). If nothing is specified or 0 is given, it does default clean shutdown. If 1+ is given, exits with the given error code immediately. This is helpful to shutting down instance even if it is stuck somewhere. MariaDB doesn't support SHUTDOWN statement or have any other way to exit the server process.
-
Sergei Petrunia authored
Part #2: also replace error text in SHOW WARNINGS
-
- 15 Jul, 2019 4 commits
-
-
Sergei Petrunia authored
It was introduced by this patch in fb/mysql-5.6: Author: Yoshinori Matsunobu <yoshinori@fb.com> Date: Mon Jun 10 14:09:28 2019 -0700 Extending SHUTDOWN query to support read_only/aborting Summary: This diff extends SHUTDOWN query to support the following features. - Aborting with any specified exit code (range is 0..255). If nothing is specified or 0 is given, it does default clean shutdown. If 1+ is given, exits with the given error code immediately. This is helpful to shutting down instance even if it is stuck somewhere. MariaDB doesn't support SHUTDOWN statement or have any other way to exit the server process.
-
Sergei Petrunia authored
-
Sujatha authored
MDEV-11154: Write_on_release_cache(log_event.cc) function will not write "COMMIT", if use "mysqlbinlog ... | mysql ..." Problem: ======= Executing command, "mysqlbinlog --read-from-remote-server --host='xx.xx.xx.xx' --port=3306 --user=xxx --password=xxx --database=mysql --to-last-log mysql-bin.000001 --start-position=1098699 --stop-never |mysql -uxxx -pxxx", we found that last data read from remote couldn't commit. Analysis: ======== The purpose of 'Write_on_release_cache' is that the contents of the Cache will automatically be written to a dedicated result file on destruction. Flush operation on the result file is controlled by a flag 'FLUSH_F'. Events which require force flush upon their destruction will have to enable this 'Write_on_release_cache::FLUSH_F'. At present the 'FLUSH_F' flag is defined as an enum as shown below. enum flag { FLUSH_F }; Since 'FLUSH_F' is the first member without initialization it get the default value '0'. Because of this the following flush condition never succeeds. if (m_flags & FLUSH_F) fflush(m_file); At present the file gets flushed only during my_fclose(result_file) operation. When continuous streaming is enabled through --stop-never option it never gets flushed and hence events are not replicated. Fix: === Initialize the enum value to non zero value.
-
Jan Lindström authored
Problem was that tests select INFORMATION_SCHEMA.PROCESSLIST processes from user system user and empty state. Thus, there is not clear state for slave threads. Changes: - Added new status variables that store current amount of applier threads (wsrep_applier_thread_count) and rollbacker threads (wsrep_rollbacker_thread_count). This will make clear how many slave threads of certain type there is. - Added THD state "wsrep applier idle" when applier slave thread is waiting for work. This makes finding slave/applier threads easier. - Added force-restart option for mtr to always restart servers between tests to avoid race on start of the test - Added wait_condition_with_debug to wait until the passed statement returns true, or the operation times out. If operation times out, the additional error statement will be executed Changes to be committed: new file: mysql-test/include/force_restart.inc new file: mysql-test/include/wait_condition_with_debug.inc modified: mysql-test/mysql-test-run.pl modified: mysql-test/suite/galera/disabled.def modified: mysql-test/suite/galera/r/MW-336.result modified: mysql-test/suite/galera/r/galera_kill_applier.result modified: mysql-test/suite/galera/r/galera_var_slave_threads.result new file: mysql-test/suite/galera/t/MW-336.cnf modified: mysql-test/suite/galera/t/MW-336.test modified: mysql-test/suite/galera/t/galera_kill_applier.test modified: mysql-test/suite/galera/t/galera_parallel_autoinc_largetrx.test modified: mysql-test/suite/galera/t/galera_parallel_autoinc_manytrx.test modified: mysql-test/suite/galera/t/galera_var_slave_threads.test modified: mysql-test/suite/wsrep/disabled.def modified: mysql-test/suite/wsrep/r/variables.result modified: mysql-test/suite/wsrep/t/variables.test modified: sql/mysqld.cc modified: sql/wsrep_mysqld.cc modified: sql/wsrep_mysqld.h modified: sql/wsrep_thd.cc modified: sql/wsrep_var.cc
-
- 14 Jul, 2019 2 commits
-
-
Sergei Petrunia authored
-
Sergei Petrunia authored
was getting rows=2 instead of 1 on kvm-rpm-centos74-amd64
-
- 12 Jul, 2019 1 commit
-
-
Sergei Petrunia authored
Use RocksDB debug sync points to introduce a sync delay. This commits to get grouped even when the datadir is on ramdisk. For some unclear reason the effect is visible on write_prepared but not write_committed, so run the test only with write_prepared.
-
- 11 Jul, 2019 2 commits
-
-
Thirunarayanan Balathandayuthapani authored
Problem: ======= Checksum fields can have value as zero. In that case, InnoDB falsely consider that page should be all zeroes. It leads to wrong detection of page corruption. Solution: ======== Remove the condition that checks if checksum fields are zero then page should be all zeroes.
-
Anel Husakovic authored
-