mariadb/storage
Marko Mäkelä 657fcdf430 MDEV-24280 InnoDB triggers too many independent periodic tasks
A side effect of MDEV-16264 is that a large number of threads will
be created at server startup, to be destroyed after a minute or two.

One source of such thread creation is srv_start_periodic_timer().
InnoDB is creating 3 periodic tasks: srv_master_callback (1Hz)
srv_error_monitor_task (1Hz), and srv_monitor_task (0.2Hz).

It appears that we can merge srv_error_monitor_task and srv_monitor_task
and have them invoked 4 times per minute (every 15 seconds). This will
affect our ability to enforce innodb_fatal_semaphore_wait_threshold and
some computations around BUF_LRU_STAT_N_INTERVAL.

We could remove srv_master_callback along with the DROP TABLE queue
at some point of time in the future. We must keep it independent
of the innodb_fatal_semaphore_wait_threshold detection, because
the background DROP TABLE queue could get stuck due to dict_sys
being locked by another thread. For now, srv_master_callback
must be invoked once per second, so that
innodb_flush_log_at_timeout=1 can work.

BUF_LRU_STAT_N_INTERVAL: Reduce the precision and extend the time
from 50*1 second to 4*15 seconds.

srv_error_monitor_timer: Remove.

MAX_MUTEX_NOWAIT: Increase from 20*1 second to 2*15 seconds.

srv_refresh_innodb_monitor_stats(): Avoid a repeated call to time(NULL).
Change the interval to less than 60 seconds.

srv_monitor(): Renamed from srv_monitor_task.

srv_monitor_task(): Renamed from srv_error_monitor_task().
Invoked only once in 15 seconds. Invoke also srv_monitor().
Increase the fatal_cnt threshold from 10*1 second to 1*15 seconds.

sync_array_print_long_waits_low(): Invoke time(NULL) only once.
Remove a bogus message about printouts for 30 seconds. Those
printouts were effectively already disabled in MDEV-16264
(commit 5e62b6a5e0).
2020-11-25 16:54:00 +02:00
..
archive Added 'final' to some classes to improve generated code 2020-08-04 17:27:32 +02:00
blackhole Merge 10.3 into 10.4 2020-11-03 14:49:17 +02:00
cassandra
columnstore Update MCS to resolve libmarias3 compulation for centos74-amd64-debug 2020-11-19 13:52:33 +00:00
connect Merge 10.3 into 10.4 2020-11-03 14:49:17 +02:00
csv Added 'final' to some classes to improve generated code 2020-08-04 17:27:32 +02:00
example remove mysql_declare_plugin declaration from some plugins 2020-07-04 01:44:47 +02:00
federated replace HTON_AUTOMATIC_DELETE_TABLE with return -1 from drop_table() 2020-07-04 01:44:47 +02:00
federatedx Added 'final' to some classes to improve generated code 2020-08-04 17:27:32 +02:00
heap MDEV-22677 UPDATE crashes on partitioned HEAP table WITHOUT OVERLAPS 2020-11-02 14:11:43 +10:00
innobase MDEV-24280 InnoDB triggers too many independent periodic tasks 2020-11-25 16:54:00 +02:00
maria Merge 10.4 into 10.5 2020-11-13 21:54:21 +02:00
mroonga Merge 10.4 into 10.5 2020-10-30 11:15:30 +02:00
myisam Merge 10.4 into 10.5 2020-11-03 16:24:47 +02:00
myisammrg Added 'final' to some classes to improve generated code 2020-08-04 17:27:32 +02:00
oqgraph optimization: use hton->drop_table in few simple cases 2020-07-04 01:44:46 +02:00
perfschema Merge 10.4 into 10.5 2020-11-03 16:24:47 +02:00
rocksdb Merge 10.4 into 10.5 2020-10-30 11:15:30 +02:00
sequence Added 'final' to some classes to improve generated code 2020-08-04 17:27:32 +02:00
sphinx Added 'final' to some classes to improve generated code 2020-08-04 17:27:32 +02:00
spider SPIDER storage engine plugin -> Stable 2020-10-29 10:03:15 +01:00
test_sql_discovery MDEV-19632 Replication aborts with ER_SLAVE_CONVERSION_FAILED upon CREATE ... SELECT in ORACLE mode 2020-08-01 07:43:50 +04:00
tokudb Merge 10.3 into 10.4 2020-11-03 14:49:17 +02:00