A RetroSearch Logo

Home - News ( United States | United Kingdom | Italy | Germany ) - Football scores

Search Query:

Showing content from https://mariadb.com/docs/server/server-usage/storage-engines/innodb/innodb-asynchronous-io below:

InnoDB Asynchronous I/O | MariaDB Documentation

InnoDB Asynchronous I/O | MariaDB Documentation
  1. Server Usage
  2. Storage Engines
  3. InnoDB
InnoDB Asynchronous I/O

From MariaDB 10.5, InnoDB uses asynchronous I/O to read from and write to disk asynchronously. This forms part of the InnoDB Background Thread Pool.

Each asynchronous IO operation goes through multiple stages:

  1. SUBMITTED – The IO operation is initiated.

  1. COMPLETED_IN_OS – The operating system notifies InnoDB that the I/O operation is complete.

  1. EXECUTING_COMPLETION_TASK – A tpool thread processes the completion task for the IO operation.

  2. COMPLETED – The IO operation is fully handled.

Resource Constraints and Queuing Mechanisms

The total number of pending asynchronous IO operations is limited by:

total_count = number_of_IO_threads * 256

where number_of_IO_threads refers to either innodb_io_read_threads or innodb_io_write_threads.

Each IO operation is associated with an IO slot, which contains necessary metadata such as the file handle, operation type, offset, length, and any OS error codes. Initially, all total_count slots are free, but as pending IO requests accumulate, slots get occupied. If all slots are in use, additional IO requests must wait for a free slot.

The number of completion tasks (EXECUTING_COMPLETION_TASK stage) that can run in parallel is also limited by innodb_io_read_threads or innodb_io_write_threads. If too many IO operations complete simultaneously, they cannot all be processed in parallel and must be queued, respecting the thread limit.

From MariaDB 11.5, a number of status variables were added to give insight into the above operations:

Similar variables exist for write operations:

This page is licensed: CC BY-SA / Gnu FDL


RetroSearch is an open source project built by @garambo | Open a GitHub Issue

Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo

HTML: 3.2 | Encoding: UTF-8 | Version: 0.7.4