- 02 Dec, 2021 1 commit
-
-
Alexander Barkov authored
-
- 29 Nov, 2021 8 commits
-
-
Marko Mäkelä authored
-
Marko Mäkelä authored
-
Marko Mäkelä authored
-
Marko Mäkelä authored
-
Marko Mäkelä authored
-
Marko Mäkelä authored
Let us create and drop a separate database for getting rid of the default database in the MDEV-22781 test.
-
Marko Mäkelä authored
-
Marko Mäkelä authored
-
- 28 Nov, 2021 2 commits
-
-
Vladislav Vaintroub authored
The warning message says the file contains a character which can not be represented in current codepage (not exactly accurate)
-
Vladislav Vaintroub authored
Disable lock elision, due to buggy intrin.h (_xbegin is misspelled) Fix warnings.
-
- 26 Nov, 2021 9 commits
-
-
Sergei Golubchik authored
restore the old behavior where without a debugger mtr does not wait for mysqld to start. It was broken in feacc0aa
-
Sergei Krivonos authored
-
Sergei Krivonos authored
-
Sergei Krivonos authored
MDEV-27036: repeated "table" key resolve for print_explain_json MDEV-27036: duplicated keys in best_access_path MDEV-27036: Explain_aggr_filesort::print_json_members: resolve duplicated "filesort" member in Json object MDEV-27036: Explain_basic_join:: print_explain_json_interns fixed start_dups_weedout case for main.explain_json test
-
Sergei Krivonos authored
-
Sergei Krivonos authored
-
Sergei Golubchik authored
close_connections() in mysqld.cc sends a signal to all threads. But InnoDB is too busy purging, doesn't react immediately. close_connections() waits 20 seconds, which isn't enough in this particular case, and then unlinks all threads from the list and forcibly closes their vio connection. InnoDB background threads have no vio connection to close, but they're unlinked all the same. So when later they finally notice the shutdown request and try to unlink themselves, they fail to assert that they're still linked. Fix: don't assert_linked, as another thread can unlink this THD anytime
-
Sergei Golubchik authored
MDEV-20330 Combination of "," (comma), cross join and left join fails to parse
-
Hugo Wen authored
From 10.4.13, the `mariadb.sys` user was created to replace `root` definers. - In commit 0253ea7f, definer of Add/DropGeometryColumn procedures was changed to `mariadb.sys`, in `scripts/maria_add_gis_sp.sql.in`. However, maria_add_gis_sp.sql only applies to new databases created by installation script. Databases upgraded from old versions will miss this change. - In addition, according to commit 0d6d801e(MDEV-23102), in some scenarios when root user is replaced it will skip creating `mariadb.sys` user. This commit is to update the definer from `root` to `mariadb.sys` during upgrade. It only makes the change if the original definers are root. Doesn't choose to execute `maria_add_gis_sp.sql` in upgrade script to recreate the procedures is because of considering the scenarios of MDEV-23102 that `root` user is replaced and `mariadb.sys` is not created. All new code of the whole pull request, including one or several files that are either new files or modified ones, are contributed under the BSD-new license. I am contributing on behalf of my employer Amazon Web Services, Inc.
-
- 25 Nov, 2021 9 commits
-
-
Marko Mäkelä authored
-
Marko Mäkelä authored
-
Marko Mäkelä authored
This fixes up 4489a89c and the test binlog.binlog_truncate_multi_engine that indirectly invokes the DBUG_SUICIDE.
-
Marko Mäkelä authored
-
Marko Mäkelä authored
Occasionally, the test would fail with a result difference for ddl_log_file_alter_table (0 instead of 1) due to some nondeterminism in the test. Let us remove that nondeterminism.
-
Marko Mäkelä authored
-
Marko Mäkelä authored
-
Marko Mäkelä authored
-
Marko Mäkelä authored
-
- 24 Nov, 2021 11 commits
-
-
Marko Mäkelä authored
In commit 1193a793 we set innodb_use_native_aio=OFF when using io_uring on a kernel where write requests could potentially be lost. The last reproducible issue was fixed in Linux 5.16-rc1 https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?h=v5.16-rc1&id=d3e3c102d107bb84251455a298cf475f24bab995 and the fix was backported to 5.15.3. Hence, using a 5.16 or later kernel should be fine. The Debian kernel 5.15.0-1-amd64 (5.15.3-1) was tested. On Debian, utsname::release or uname -r does not reflect the exact minor version while utsname::version and uname -v does. On Fedora however the utsname::version is rather different: $ uname -r 5.14.20-200.fc34.x86_64 $ uname -v #1 SMP Thu Nov 18 22:03:20 UTC 2021 As such we use the version, but fall back to the release if there isn't the beginnings of a kernel version in the version. Thanks to Daniel Black for reporting the Linux kernel bug and Jens Axboe for actually fixing it. Co-Authored-By: Daniel Black <daniel@mariadb.org> Closes: #1953
-
Robert Bindar authored
-
Eric Herman authored
The DYNAMIC_ARRAY copies values in and copies values out. Without a comparitor function, get_index_dynamic() does not make sense. This function is not used. If we have a need for a function like it in the future, I propose we write a new one with unit tests showing how it is used and demostrating that it behaves as expected.
-
Sergei Krivonos authored
-
Sergei Krivonos authored
-
ryancaicse authored
Fix a potential deadlock bug between locks ctrl_mutex and entry->mutex
-
Marko Mäkelä authored
Sys_lc_messages, Sys_lc_time_names: Use offsetof(MY_LOCALE, ...) because the type has standard layout.
-
Marko Mäkelä authored
-
Marko Mäkelä authored
The macro my_offsetof() performs pointer arithmetics that may be undefined behavior. As reported in MDEV-26272, it may cause clang -fsanitize=undefined to generate invalid memory references. struct PFS_events_statements: Convert to std::is_standard_layout by encapsulating the standard-layout struct PFS_events instead of deriving from it, so that the standard macro offsetof() can be used. PFS_events_statements::copy(): Renamed from copy_events_statements(). A cast to void* is now needed in memcpy() to avoid GCC -Wclass-memaccess "writing to an object ... leaves 64 bytes unchanged".
-
Alexander Barkov authored
The weight scanner routine scanner_next() did not properly handle the cases when a contraction produces no weights (is ignorable). Adding a helper routine my_uca_scanner_set_weight() and using it in all cases: - A single ASCII character - A contraction starting with an ASCII character - A multi-byte character - A contraction starting with a multi-byte character Also adding two other helper routines: - my_uca_scanner_next_expansion_weight() - my_uca_scanner_set_weight_outside_maxchar() to avoid using scanner->wbeg directly inside scanner_next(). This reduces the probability of similar future bugs.
-
Alexander Barkov authored
This patch prepares the code for upcoming changes: MDEV-27009 Add UCA-14.0.0 collations MDEV-27042 UCA: Resetting contractions to ignorable does not work well 1. Adding "const" qualifiers to return type and parameters in functions: - my_uca_contraction2_weight() - my_wmemcmp() - my_uca_contraction_weight() - my_uca_scanner_contraction_find() - my_uca_previous_context_find() - my_uca_context_weight_find() 2. Adding a helper function my_uca_true_contraction_eq() 3. Changing the way how scanner->wbeg is set during context weight handling. It was previously set inside functions: - my_uca_scanner_contraction_find() - my_uca_previous_context_find() Now it's set inside scanner_next(), which makes the code more symmetric for context-free and context-dependent sequences. This makes then upcoming fix for MDEV-27042 simpler.
-