- 13 Dec, 2022 9 commits
-
-
Marko Mäkelä authored
-
Marko Mäkelä authored
-
Marko Mäkelä authored
-
Sergei Golubchik authored
-
Marko Mäkelä authored
-
Daniel Black authored
Merge Jan's bb-10.6-merge-jan branch: MDEV-30172 Galera test case cleanup * Delete tests that are not supported and not going to be supported any time soon * Fix result set on tests that are not run on bb * Fix tests that fail because of auto increment offset * Make sure that disabled tests have open bug report
-
Jan Lindström authored
galera.galera_bf_abort_at_after_statement disabled by Daniel Black
-
Daniel Black authored
Adjust galera/galera_3nodes disabled tests.
-
Daniel Black authored
-
- 12 Dec, 2022 7 commits
-
-
Daniel Black authored
-
Daniel Black authored
Hide the errors related to missing innodb stats tables in bootstrap mode on the assumption that because we are in bootstrap mode they are going to be created.
-
Marko Mäkelä authored
mtr_t::commit_file(): Protect the rename operation with fil_system.mutex like we used to do before commit 2e43af69 in order to prevent fil_node_open_file() from running concurrently. In other words, fil_system.mutex will protect the consistency of fil_node_t::name and the file name in the file system. This race condition should be very hard to trigger. We would need a low value of innodb_open_files or table_cache limit so that fil_space_t::try_to_close() will be invoked frequently. Simultaneously with a RENAME operation, something (such as a write of a data page) would have to try to open the file.
-
Marko Mäkelä authored
-
Marko Mäkelä authored
This fixes up commit dd5f4b36
-
Marko Mäkelä authored
trx_purge_truncate_history(): In case of an apparent conflict with buf_pool_t::release_freed_page(), always momentarily acquire buf_pool.mutex, to let the thread that is holding it and waiting for buf_pool.flush_list_mutex to proceed. The fix in commit c410f7aa was insufficient, because simple yielding would not necessarily let the conflicting thread to acquire buf_pool.flush_list_mutex. This hang was reported and the fix tested by Axel Schwenke.
-
Daniel Black authored
-
- 10 Dec, 2022 1 commit
-
-
Julius Goryavsky authored
This commit fixes the test system hanging due to the galera_var_notify_ssl_ipv6 test and also brings the wsrep_notify[_ssl].sh files in line with each other between the user template and the mtr suite. Quotes are also added here to avoid problems if the user specifies the value of one of the variables at the beginning of the file containing shell-specific characters, for example, if the password or username specified in the PSWD and USER variables will contain the "$" character. Also fixed an issue with automatic --ssl-verify-server-cert option substitution when the corresponding value is set by the user to "1" or "on". Also fixed some tests here to avoid joining one of the nodes to another cluster when the nodes are restarted from the mtr side, which can lead to random failures when testing with buildbot.
-
- 09 Dec, 2022 2 commits
-
-
Julius Goryavsky authored
This commit fixes the test system hanging due to the galera_var_notify_ssl_ipv6 test and also brings the wsrep_notify[_ssl].sh files in line with each other between the user template and the mtr suite. Quotes are also added here to avoid problems if the user specifies the value of one of the variables at the beginning of the file containing shell-specific characters, for example, if the password or username specified in the PSWD and USER variables will contain the "$" character. Also fixed an issue with automatic --ssl-verify-server-cert option substitution when the corresponding value is set by the user to "1" or "on". Also fixed some tests here to avoid joining one of the nodes to another cluster when the nodes are restarted from the mtr side, which can lead to random failures when testing with buildbot.
-
Marko Mäkelä authored
mysql_discard_or_import_tablespace(): On successful ALTER TABLE...DISCARD TABLESPACE, evict the table handle from the table definition cache, so that ha_innobase::close() will be invoked, like InnoDB expects to be the case. This will avoid an assertion failure ut_a(table->get_ref_count() == 0) during IMPORT TABLESPACE. ha_innobase::open(): Do not issue any ER_TABLESPACE_DISCARDED warning. Member functions for DML will do that. ha_innobase::truncate(), ha_innobase::check_if_supported_inplace_alter(): Issue ER_TABLESPACE_DISCARDED warnings, to compensate for the removal of the warning in ha_innobase::open(). row_quiesce_write_indexes(): Only write information about committed indexes. The ALTER TABLE t NOWAIT ADD INDEX(c) in the nondeterministic test case will most of the time fail due to a metadata lock (MDL) timeout and leave behind an uncommitted index. Reviewed by: Sergei Golubchik
-
- 08 Dec, 2022 3 commits
-
-
Daniel Black authored
The geometry type requires Type:"Feature" but the feature need not be first in the JSON structure. Adjust code to return an error if geometry isn't a JSON object, but continue parsing searching for Type: "Feature" to trigger the geometry parsing. Thanks Derick Magnusen for the bug report.
-
Tuukka Pasanen authored
Convert minimal amount of Lintian overrides to make Lintian test pass also with Debian Sid latest Lintian 2.115 version. Old style overrides are kept so they can be used with older versions of Lintian. Introduce minimal Lintian overrides which are common from MariaDB version 10.5 up-to to 10.8. Overrides added files: * debian/mariadb-test-data.lintian-overrides - MariaDB installs some shared objects to test-suite directory and not in '/usr/lib' or similar. Share objects is pam_mariadb_mtr.so. Tags are arch-dependent-file-in-usr-share and arch-independent-package-contains-binary-or-object Lintia * debian/mariadb-test.lintian-overrides - MariaDB installs some some binaries to test-sute directory and in mariadb-test package they are my_safe_process and wsrep_check_version. Tags is arch-dependent-file-in-usr-share * debian/source/lintian-overrides - In source there is some source files missing which should be addressed sql/share/charsets/languages.html and and storage/rocksdb/rocksdb/docs/_includes/footer.html. Tags is source-is-missing - Add Lintian override for missing: storage/columnstore/columnstore/utils/jemalloc/libjemalloc.so.2 - Add Lintian override for substvar external resources: ${source:Version} libmariadb-dev -> libmysqlclient-dev [debian/control:66] ${source:Version} libmariadb-dev -> libmysqld-dev [debian/control:66] ${source:Version} libmariadbd-dev -> libmariadbclient-dev [debian/control:216]
-
Monty authored
If the backup finished in the middle of a Aria bulk load insert, which could happen with LOAD DATA INFILE, CREATE ... SELECT etc) there was a chance that Aria recovery would fail on the backup. Fixed by ensuring that bulk load operations for Aria are not allowed under BACKUP LOCK. I also changed so that the table TRN is updated just before truncate which ensures that old redo's for the table are ignored. I also enabled Aria redo for DDL's to be able to repeat REPAIR commands. Without this change recovery would not work on repaired tables. Notes: - We take the backup lock protection at the end of bulk insert (as we don't want to keep the lock over a very long running insert). If mariadb-backup keeps the backup lock too long, this may fail with a lock timeout. In this case the batch insert will fail and the table will be truncated (set to it's original state).
-
- 07 Dec, 2022 4 commits
-
-
Vladislav Vaintroub authored
Add retry logic for CreateFile, DeleteFile, or MoveFile when GetLastError() is ERROR_SHARING_VIOLATION.
-
Marko Mäkelä authored
-
Nayuta Yanagisawa authored
MDEV-29636 Assertion `part_share->auto_inc_initialized || !can_use_for_auto_inc_init()' failed in ha_partition::set_auto_increment_if_higher upon REPLACE with partition pruning The bug is caused by a similar mechanism as MDEV-21027. The function, check_insert_or_replace_autoincrement, failed to open all the partitions on REPLACE SELECT statements and it results in the assertion error.
-
Jan Lindström authored
* Delete tests that are not supported and not going to be supported any time soon * Fix result set on tests that are not run on bb * Fix tests that fail because of auto increment offset * Make sure that disabled tests have open bug report
-
- 06 Dec, 2022 1 commit
-
-
Vladislav Vaintroub authored
-
- 05 Dec, 2022 5 commits
-
-
Marko Mäkelä authored
-
Marko Mäkelä authored
btr_cur_t::open_random_leaf(): Replaces btr_cur_open_at_rnd_pos(). Acquire a shared latch on each page, and finally release all latches except the one on the leaf page. This fixes a race condition between the purge of history and btr_estimate_number_of_different_key_vals(), which turned out to only hold a buffer-fix on the randomly chosen leaf page. Typically, an assertion would fail in page_rec_is_supremum(). ibuf_contract(): Start from the beginning of the change buffer, to simplify the logic. Starting with commit b42294bc it does not matter much where the change buffer merge is being initiated. The race condition may have been introduced as early as mysql/mysql-server@ac74632293bea967b352d1b472abedeeaa921b98 from where it was copied to commit 2e814d47. Reviewed by: Vladislav Lesin Tested by: Matthias Leich
-
Anel Husakovic authored
- Regression introduced 7baf24a0 for multidigit gcc dump. There is no dot in `dumpversion`. ``` $ gcc -dumpversion 10 ``` Otherwise it will fail and not produce the output ``` Running dgcov Name "IO::Uncompress::Gunzip::GunzipError" used only once: possible typo at ./dgcov.pl line 197. Cannot parse gcc -dumpversion: 9 ``` - The warning `once` is always generated: ``` Running dgcov Name "IO::Uncompress::Gunzip::GunzipError" used only once: possible typo at ./dgcov.pl line 197. <number> ``` Suppresing the line `Name "IO::Uncompress::Gunzip::GunzipError" used only once: possible typo at ./dgcov.pl line 197.` with the patch. - Reviewed by: <>
-
Monty authored
This could happen if one did a DML with a moved table that one had done an external zerofill on. The crash happend because a message that was supposed to be sent to a repair report was instead sent to the result, which caused an ASSERT
-
Otto Kekäläinen authored
The version was fixed to be Fedora 36 due to previous issues on Gitlab-CI, but those seem to be solved now. Use 'mariadb' name in scripts and server binary as Fedora switched name in https://src.fedoraproject.org/rpms/mariadb/c/df76620f9e8a9b3f14da8a615050feeac2c62e26 Switch to using the `default:` section supported by newer Gitlab-CI, see https://docs.gitlab.com/ee/ci/yaml/#default. Also define an explicit timeout of 3 hours to ensure builds don't time out if the default timeout is too short. NOTE TO MERGERS: These changes are version independent and should be merged up on all MariaDB branches 10.6 -> 10.11.
-
- 03 Dec, 2022 2 commits
-
-
Sergei Golubchik authored
and enable option bundling
-
Sergei Petrunia authored
The cause of regression was handling for ROWNUM() function. For queries like SELECT ROWNUM() FROM ... ORDER BY ... ROWNUM() should be computed before the ORDER BY. The computation was moved to be before the ORDER BY for any entries in the select list that had RAND_TABLE_BIT set. This had a negative impact on queries in form: SELECT sp_func() FROM t1 ORDER BY ... LIMIT n where sp_func() is NOT declared as DETERMINISTIC (and so has RAND_TABLE_BIT set). The fix is to require evaluation for sorting only for the ROWNUM() function. Functions that just have RAND_TABLE_BIT() can be computed after ORDER BY ... LIMIT is applied. (think about a possible index that satisfies the ORDER BY clause. In that case, the the rows would be read in the needed order and we would stop after reading LIMIT rows, achieving the same effect).
-
- 02 Dec, 2022 6 commits
-
-
Sergei Golubchik authored
* update README * fix version regex to support versions with two digits * die if the version cannot be parsed * support gcc versions 11+ * require JSON::PP not use, to avoid introducing new rpm dependency into MariaDB-test
-
Anel Husakovic authored
- Script covers situation for gcov (gcc) < 9 with non-json format of generated files as well as for gcov (gcc) >=8 with json generated format Reviewed by: serg@mariadb.com
-
Sergei Golubchik authored
sometimes `KILL QUERY ID @id` was executed before the previous `send SELECT SLEEP(1000)` has reached the parser. As the statement resets the kill status before execution, the effect of the KILL was ignored.
-
Sergei Golubchik authored
Item_func_not_all::print() either uses Item_func::print() or directly invokes args[0]->print(). Thus the precedence should be either the one of Item_func or of args[0]. Item_allany_subselect::print() prints args[0], then a comparison op, then a subquery. That is, the precedence should be the one of a comparison.
-
Sergei Golubchik authored
detect non-determinism in vcol of vcol, like: create table t1 (a int, b real as (rand()), c real as (b) stored);
-
Sergei Golubchik authored
change vcol_upgrade test to use stored gcols
-