Commit 607de9c7 authored by Marko Mäkelä's avatar Marko Mäkelä

Merge 10.5 into 10.6

parents a8379e53 f1acd9f1
......@@ -38,7 +38,6 @@ galera_var_dirty_reads : MDEV-25615 Galera test failure on galera_var_dirty_read
galera_var_ignore_apply_errors : MDEV-26770 galera_var_ignore_apply_errors fails Server did not transition to READY state
galera_var_node_address : MDEV-20485 Galera test failure
galera_var_notify_cmd : MDEV-21905 Galera test galera_var_notify_cmd causes hang
galera_var_replicate_myisam_on : MDEV-24062 Galera test failure on galera_var_replicate_myisam_on
galera_var_retry_autocommit: MDEV-18181 Galera test failure on galera.galera_var_retry_autocommit
galera_wsrep_provider_unset_set: wsrep_provider is read-only for security reasons
mysql-wsrep#198 : MDEV-24446: galera.mysql-wsrep#198 MTR failed: query 'reap' failed: 2000: Unknown MySQL error
......
......@@ -71,16 +71,35 @@ connection node_3a;
SET SESSION wsrep_sync_wait = 0;
SET SESSION wsrep_sync_wait = DEFAULT;
connection node_1a;
Timeout in wait_condition.inc for SELECT COUNT(*) = 0 FROM mysql.wsrep_streaming_log
Id User Host db Command Time State Info Progress
1 system user NULL Sleep 66 wsrep aborter idle NULL 0.000
2 system user NULL Sleep 66 closing tables NULL 0.000
10 root localhost test Sleep 58 NULL 0.000
11 root localhost:52722 test Sleep 56 NULL 0.000
12 root localhost:52724 test Query 0 starting show full processlist 0.000
SELECT COUNT(*) AS EXPECT_0 FROM mysql.wsrep_streaming_log;
EXPECT_0
0
1
connection node_2a;
Timeout in wait_condition.inc for SELECT COUNT(*) = 0 FROM mysql.wsrep_streaming_log
Id User Host db Command Time State Info Progress
1 system user NULL Sleep 96 wsrep aborter idle NULL 0.000
2 system user NULL Sleep 87 closing tables NULL 0.000
10 root localhost:37222 test Sleep 64 NULL 0.000
11 root localhost:37228 test Query 0 starting show full processlist 0.000
SELECT COUNT(*) AS EXPECT_0 FROM mysql.wsrep_streaming_log;
EXPECT_0
0
1
connection node_3a;
Timeout in wait_condition.inc for SELECT COUNT(*) = 0 FROM mysql.wsrep_streaming_log
Id User Host db Command Time State Info Progress
1 system user NULL Sleep 122 wsrep aborter idle NULL 0.000
2 system user NULL Sleep 117 closing tables NULL 0.000
10 root localhost:60992 test Sleep 117 NULL 0.000
11 root localhost:60994 test Query 0 starting show full processlist 0.000
SELECT COUNT(*) AS EXPECT_0 FROM mysql.wsrep_streaming_log;
EXPECT_0
0
1
connection node_1;
DROP TABLE t1;
......@@ -151,10 +151,16 @@ SET SESSION wsrep_sync_wait = DEFAULT;
# Expect no entries in wsrep_streaming_log
#
--connection node_1a
--let $wait_condition = SELECT COUNT(*) = 0 FROM mysql.wsrep_streaming_log
--source include/wait_condition.inc
SELECT COUNT(*) AS EXPECT_0 FROM mysql.wsrep_streaming_log;
--connection node_2a
--let $wait_condition = SELECT COUNT(*) = 0 FROM mysql.wsrep_streaming_log
--source include/wait_condition.inc
SELECT COUNT(*) AS EXPECT_0 FROM mysql.wsrep_streaming_log;
--connection node_3a
--let $wait_condition = SELECT COUNT(*) = 0 FROM mysql.wsrep_streaming_log
--source include/wait_condition.inc
SELECT COUNT(*) AS EXPECT_0 FROM mysql.wsrep_streaming_log;
......
......@@ -426,7 +426,14 @@ static inline
int wsrep_after_statement(THD* thd)
{
DBUG_ENTER("wsrep_after_statement");
DBUG_RETURN(thd->wsrep_cs().state() != wsrep::client_state::s_none &&
WSREP_DEBUG("wsrep_after_statement for %lu client_state %s "
" client_mode %s trans_state %s",
thd_get_thread_id(thd),
wsrep::to_c_string(thd->wsrep_cs().state()),
wsrep::to_c_string(thd->wsrep_cs().mode()),
wsrep::to_c_string(thd->wsrep_cs().transaction().state()));
DBUG_RETURN((thd->wsrep_cs().state() != wsrep::client_state::s_none &&
thd->wsrep_cs().mode() == Wsrep_client_state::m_local) &&
!thd->internal_transaction() ?
thd->wsrep_cs().after_statement() : 0);
}
......
......@@ -126,7 +126,7 @@ static void buf_flush_validate_skip()
#endif /* UNIV_DEBUG */
/** Wake up the page cleaner if needed */
inline void buf_pool_t::page_cleaner_wakeup()
void buf_pool_t::page_cleaner_wakeup()
{
if (!page_cleaner_idle())
return;
......
......@@ -17148,7 +17148,12 @@ innodb_max_dirty_pages_pct_update(
}
srv_max_buf_pool_modified_pct = in_val;
pthread_cond_signal(&buf_pool.do_flush_list);
mysql_mutex_unlock(&LOCK_global_system_variables);
mysql_mutex_lock(&buf_pool.flush_list_mutex);
buf_pool.page_cleaner_wakeup();
mysql_mutex_unlock(&buf_pool.flush_list_mutex);
mysql_mutex_lock(&LOCK_global_system_variables);
}
/****************************************************************//**
......@@ -17179,7 +17184,12 @@ innodb_max_dirty_pages_pct_lwm_update(
}
srv_max_dirty_pages_pct_lwm = in_val;
pthread_cond_signal(&buf_pool.do_flush_list);
mysql_mutex_unlock(&LOCK_global_system_variables);
mysql_mutex_lock(&buf_pool.flush_list_mutex);
buf_pool.page_cleaner_wakeup();
mysql_mutex_unlock(&buf_pool.flush_list_mutex);
mysql_mutex_lock(&LOCK_global_system_variables);
}
/*************************************************************//**
......
......@@ -1845,7 +1845,7 @@ class buf_pool_t
return page_cleaner_is_idle;
}
/** Wake up the page cleaner if needed */
inline void page_cleaner_wakeup();
void page_cleaner_wakeup();
/** Register whether an explicit wakeup of the page cleaner is needed */
void page_cleaner_set_idle(bool deep_sleep)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment