summaryrefslogtreecommitdiff
path: root/storage/innobase/include/buf0flu.h
diff options
context:
space:
mode:
authorVladislav Vaintroub <wlad@mariadb.com>2019-10-29 22:37:12 +0100
committerVladislav Vaintroub <wlad@mariadb.com>2019-11-15 18:09:30 +0100
commit5e62b6a5e06eb02cbde1e34e95e26f42d87fce02 (patch)
treee20f8c1d9cd084ae1b8a4d2bd33eec4027d9fa90 /storage/innobase/include/buf0flu.h
parent00ee8d85c925846acc76df2a6fc7c67a062c2ea6 (diff)
downloadmariadb-git-5e62b6a5e06eb02cbde1e34e95e26f42d87fce02.tar.gz
MDEV-16264 Use threadpool for Innodb background work.
Almost all threads have gone - the "ticking" threads, that sleep a while then do some work) (srv_monitor_thread, srv_error_monitor_thread, srv_master_thread) were replaced with timers. Some timers are periodic, e.g the "master" timer. - The btr_defragment_thread is also replaced by a timer , which reschedules it self when current defragment "item" needs throttling - the buf_resize_thread and buf_dump_threads are substitutes with tasks Ditto with page cleaner workers. - purge workers threads are not tasks as well, and purge cleaner coordinator is a combination of a task and timer. - All AIO is outsourced to tpool, Innodb just calls thread_pool::submit_io() and provides the callback. - The srv_slot_t was removed, and innodb_debug_sync used in purge is currently not working, and needs reimplementation.
Diffstat (limited to 'storage/innobase/include/buf0flu.h')
-rw-r--r--storage/innobase/include/buf0flu.h4
1 files changed, 1 insertions, 3 deletions
diff --git a/storage/innobase/include/buf0flu.h b/storage/innobase/include/buf0flu.h
index 3753cb05651..ea26dbe9106 100644
--- a/storage/innobase/include/buf0flu.h
+++ b/storage/innobase/include/buf0flu.h
@@ -269,9 +269,7 @@ buf_flush_free_flush_rbt(void);
/********************************************************************//**
Writes a flushable page asynchronously from the buffer pool to a file.
-NOTE: in simulated aio we must call
-os_aio_simulated_wake_handler_threads after we have posted a batch of
-writes! NOTE: buf_pool->mutex and buf_page_get_mutex(bpage) must be
+NOTE: buf_pool->mutex and buf_page_get_mutex(bpage) must be
held upon entering this function, and they will be released by this
function.
@return TRUE if page was flushed */