- 22 Dec, 2023 2 commits
-
-
Vladislav Vaintroub authored
Marko reported DBUG_ASSERT from dict_stats_shutdown(). destroy_background_thd() does not like when current_thd is set. In galera, it can be the case, dict_stats_shutdown() can be called from user thread, to stop and later restart stats recalculations.
-
Yuchen Pei authored
The merge e95bba9c missed it
-
- 21 Dec, 2023 11 commits
-
-
Jan Lindström authored
Changes to be committed: modified: mysql-test/suite/galera/r/MW-388.result modified: mysql-test/suite/galera/r/MW-86-wait1.result modified: mysql-test/suite/galera/r/MW-86-wait8.result modified: mysql-test/suite/galera/r/galera_myisam_autocommit.result modified: mysql-test/suite/galera/r/galera_var_retry_autocommit.result modified: mysql-test/suite/galera/t/galera_myisam_autocommit.test These tests are run only using debug Galera library and changes are only test related. Signed-off-by: Julius Goryavsky <julius.goryavsky@mariadb.com>
-
Vladislav Vaintroub authored
If recalc_pool is not empty, dict_stats needs to be rescheduled. Also revert aff5ed39
-
Vladislav Vaintroub authored
Use static dict_stats_thd instead of creating/destroying it every time function is called.
-
Vladislav Vaintroub authored
-
Vladislav Vaintroub authored
dict_stats_schedule() is executed for --innodb-force-recovery=3+, but timer is not created.
-
Marko Mäkelä authored
-
Marko Mäkelä authored
-
Marko Mäkelä authored
-
Vladislav Vaintroub authored
Timer has internal synchronization, so that calling set_time concurrently is not a problem.
-
Marko Mäkelä authored
-
Sergei Golubchik authored
ASAN uses *a lot* more stack. use not_asan.inc for tests that recursively put a lot of data on the stack
-
- 20 Dec, 2023 9 commits
-
-
Yuchen Pei authored
In spider_db_mbase_util::print_item_func(), if the sql item_func has an UNKNOWN_FUNC type, by default the spider group by handler (gbh) transform infix to prefix. But regexp should remain infix, so we add an if condition to account for this.
-
Jan Lindström authored
Improve test case to wait until cluster membership is correct. Signed-off-by: Julius Goryavsky <julius.goryavsky@mariadb.com>
-
Marko Mäkelä authored
-
Julius Goryavsky authored
This reverts commit ddd8a908 (additional correction required)
-
Sergei Petrunia authored
-
Daniele Sciascia authored
This patch fixes cases where a transaction caused empty writeset to be replicated. This could happen in the case where a transaction executes a statement that initially manages to modify some data and therefore appended keys some for certification. The statement is however rolled back at some later stage due to some error (for example, a duplicate key error). After statement rollback the transaction is still alive, has no other changes. When committing such transaction, an empty writeset was replicated through Galera. The fix is to avoid calling into commit hook only when transaction has appended one or keys for certification *and* has some data in binlog cache to replicate. Otherwise, the commit is considered empty, and goes through usual empty commit path. Signed-off-by: Julius Goryavsky <julius.goryavsky@mariadb.com>
-
Denis Protivensky authored
Remove DB_LOCK_WAIT return code check as it should have been resolved to one of the other errors by that point. Signed-off-by: Julius Goryavsky <julius.goryavsky@mariadb.com>
-
Jan Lindström authored
Changes to be committed: modified: mysql-test/suite/wsrep/disabled.def deleted: mysql-test/suite/wsrep/r/MDEV-22443.result deleted: mysql-test/suite/wsrep/r/MDEV-23092.result deleted: mysql-test/suite/wsrep/r/mdev_6832.result deleted: mysql-test/suite/wsrep/r/wsrep_variables_no_provider.result deleted: mysql-test/suite/wsrep/t/MDEV-22443.cnf deleted: mysql-test/suite/wsrep/t/MDEV-22443.test deleted: mysql-test/suite/wsrep/t/MDEV-23092.cnf deleted: mysql-test/suite/wsrep/t/MDEV-23092.test deleted: mysql-test/suite/wsrep/t/mdev_6832.cnf deleted: mysql-test/suite/wsrep/t/mdev_6832.test deleted: mysql-test/suite/wsrep/t/wsrep_variables_no_provider.cnf deleted: mysql-test/suite/wsrep/t/wsrep_variables_no_provider.test These test cases used feature not available anymore. Signed-off-by: Julius Goryavsky <julius.goryavsky@mariadb.com>
-
Julius Goryavsky authored
-
- 19 Dec, 2023 8 commits
-
-
Marko Mäkelä authored
-
Marko Mäkelä authored
-
Marko Mäkelä authored
trx_purge_truncate_history(): If a fast shutdown has been initiated, disregard innodb_undo_log_truncate=ON and return.
-
Kristian Nielsen authored
The previous patch for MDEV-10653 changes the rpl_parallel::workers_idle() function to use Relay_log_info::last_inuse_relaylog to check for idle workers. But the code was missing a NULL check. Also, there was one place during SQL slave thread start which was missing mutex synchronisation when updating inuse_relaylog. Signed-off-by: Kristian Nielsen <knielsen@knielsen-hq.org>
-
Kristian Nielsen authored
The error-injection inject_mdev8031 simulates a deadlock kill in a specific place, by setting killed_for_retry to RETRY_KILL_KILLED directly. If a real deadlock kill triggers at the same time, it is possible for the thread to complete its transaction retry and set rgi_slave to NULL before the real readlock kill can complete in the background. This will cause a segfault due to null-pointer access. Fix by changing the error injection to do a real background deadlock kill, which ensures that the thread will wait for any pending background kills to complete. Signed-off-by: Kristian Nielsen <knielsen@knielsen-hq.org>
-
Kristian Nielsen authored
Item::val_str() sets the Item::null_value flag, so call it before checking the flag, not after. Signed-off-by: Kristian Nielsen <knielsen@knielsen-hq.org>
-
Marko Mäkelä authored
trx_purge_truncate_history(): Release buf_pool.flush_list_mutex and 'dummily' acquire and release buf_pool.mutex before starting a rescan of buf_pool.flush_list, to ensure that the buf_flush_page_cleaner thread (which may be holding buf_pool.mutex) will be able to proceed. This fixes up commit 5dbe7a8c (MDEV-32757). Tested by: Axel Schwenke (on Ubuntu 18.04 and Ubuntu 20.04) Reviewed by: Vladislav Lesin
-
hsser authored
This commit addresses the file leakage problem encountered with the mysql_upgrade --check-if-upgrade-is-needed command.
-
- 18 Dec, 2023 2 commits
-
-
Marko Mäkelä authored
buf_read_ahead_linear(): Suppress a warning of comparing potentially uninitialized FIL_PAGE_PREV and FIL_PAGE_NEXT fields.
-
Marko Mäkelä authored
-
- 17 Dec, 2023 3 commits
-
-
Sergei Golubchik authored
it can be invoked with ms=0. In that case dict_stats_func is invoked immediately, it calls dict_stats_process_entry_from_recalc_pool() which at the end might try to call dict_stats_schedule() again to queue another recalc. And it can happen that the first dict_stats_schedule(0) call didn't release dict_stats_mutex yet, so the second dict_stats_schedule() won't queue a recalc. And as a result the table won't have its stats recalculated at all, not now, not later. This causes innodb.innodb_stats_auto_recalc to fail sporadically. This commit doesn't fix it but makes it less likely to occur which happens to be enough for the test to pass. Proper fix is coming soon.
-
Sergei Golubchik authored
use signal_ddl_recovery_done callback for that. also make the server to call signal_ddl_recovery_done() when loading plugins at run-time (so that plugins would't need to detect that on their own)
-
Sergei Golubchik authored
-
- 15 Dec, 2023 5 commits
-
-
Marko Mäkelä authored
trx_purge_truncate_history(): Release buf_pool.flush_list_mutex before starting a rescan of buf_pool.flush_list, to ensure that the buf_flush_page_cleaner thread (which may be holding buf_pool.mutex) will be able to proceed. This fixes up commit a0f02f74 (MDEV-32757). Tested by: Axel Schwenke Reviewed by: Vladislav Lesin
-
Sergei Golubchik authored
see also 4eca64e3
-
Thirunarayanan Balathandayuthapani authored
- InnoDB should write all zeros into a table and its indexes statistics members when table is unreadable.
-
Thirunarayanan Balathandayuthapani authored
-
Sergei Golubchik authored
followup for ad796aaa
-