![]() |
MySQL 26.7.0
Source Code Documentation
|
Types for AIO operations. More...
#include <os0file.h>
Public Types | |
| enum class | Type : uint16_t { UNSET = 0 , READ = 1 << 0 , WRITE = 1 << 1 , DBLWR = 1 << 2 , DATA_FILE = 1 << 3 , LOG = 1 << 4 , DISABLE_PARTIAL_IO_WARNINGS = 1 << 5 , DO_NOT_WAKE = 1 << 6 , IGNORE_MISSING = 1 << 7 , PUNCH_HOLE = 1 << 8 , NO_COMPRESSION = 1 << 9 , ROW_LOG = 1 << 10 , DISABLE_PUNCH_HOLE_OPTIMISATION = 1 << 11 , IBUF = 1 << 12 , NO_WRITE_TRANSFORMATIONS = 1 << 13 } |
| Flags that can be used to specify the IORequest mode and additional options, to be used as bitmask type. More... | |
Public Member Functions | |
| IORequest ()=delete | |
| Default constructor. More... | |
| IORequest (Type type) | |
| bool | is_ibuf () const |
| bool | is_read () const |
| bool | is_write () const |
| bool | is_log () const |
| bool | is_row_log () const |
| bool | is_wake () const |
| bool | is_partial_io_warning_disabled () const |
| void | disable_partial_io_warnings () |
| Disable partial read warnings. More... | |
| bool | ignore_missing () const |
| bool | is_punch_hole_requested () const |
| bool | is_punch_hole_optimisation_disabled () const |
| bool | validate () const |
| void | set_punch_hole () |
| Set the punch hole flag. More... | |
| void | disable_punch_hole_optimisation () |
| Set the force punch hole flag. More... | |
| void | set_ibuf () |
| void | clear_do_not_wake () |
| Clear the do not wake flag. More... | |
| void | clear_punch_hole () |
| Clear the punch hole flag. More... | |
| ulint | block_size () const |
| void | block_size (ulint block_size) |
| Set the block size for IO. More... | |
| uint32_t | get_original_size () const |
| Returns original size of the IO to make. More... | |
| void | set_original_size (uint32_t original_size) |
| void | clear_compressed () |
| Clear all compression related flags. More... | |
| bool | operator== (const IORequest &rhs) const |
| Compare two requests. More... | |
| void | compression_algorithm (Compression::Type type) |
| Set compression algorithm. More... | |
| Compression | compression_algorithm () const |
| Get the compression algorithm. More... | |
| bool | is_compression_requested () const |
| bool | is_compression_enabled () const |
| void | disable_compression () |
| Disable transformations. More... | |
| bool | are_write_transformations_enabled () const |
| void | disable_write_transformations () |
| Disable transformations. More... | |
| Encryption | encryption_algorithm () const |
| Get the encryption algorithm. More... | |
| bool | is_encryption_requested () const |
| void | clear_encrypted () |
| Clear all encryption related flags. More... | |
| bool | is_dblwr () const |
| std::string | to_string () const |
| Encryption & | get_encryption_info () noexcept |
| Get a reference to the underlying encryption information. More... | |
Static Public Member Functions | |
| static bool | is_punch_hole_supported () |
Private Attributes | |
| uint32_t | m_block_size {} |
| Type | m_type {} |
| Request type bit flags. More... | |
| Compression | m_compression {} |
| Compression algorithm. More... | |
| Encryption | m_encryption {} |
| Encryption algorithm. More... | |
| uint32_t | m_elen {} |
| The length of data in encrypted block. More... | |
| uint32_t | m_original_size {} |
| Length of the original IO size. More... | |
Friends | |
| constexpr friend IORequest::Type | operator~ (const IORequest::Type type) |
| constexpr friend IORequest::Type | operator& (const IORequest::Type a, const IORequest::Type b) |
| constexpr friend IORequest::Type & | operator|= (IORequest::Type &a, const IORequest::Type b) |
| constexpr friend IORequest::Type & | operator&= (IORequest::Type &a, const IORequest::Type b) |
Types for AIO operations.
The IO Context that is passed down to the low level IO code
|
strong |
Flags that can be used to specify the IORequest mode and additional options, to be used as bitmask type.
|
delete |
Default constructor.
|
inlineexplicit |
| [in] | type | Request type, can be a value that is ORed from the above enum |
|
inline |
|
inline |
|
inline |
Set the block size for IO.
| [in] | block_size | Block size to set |
|
inline |
Clear all compression related flags.
|
inline |
Clear the do not wake flag.
|
inline |
Clear all encryption related flags.
|
inline |
Clear the punch hole flag.
|
inline |
Get the compression algorithm.
|
inline |
Set compression algorithm.
| [in] | type | The compression algorithm to use |
|
inline |
Disable transformations.
|
inline |
Disable partial read warnings.
|
inline |
Set the force punch hole flag.
|
inline |
Disable transformations.
|
inline |
Get the encryption algorithm.
|
inlinenoexcept |
Get a reference to the underlying encryption information.
|
inline |
Returns original size of the IO to make.
If one was not specified, then 0 is returned.
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inlinestatic |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
Compare two requests.
|
inline |
|
inline |
|
inline |
Set the punch hole flag.
|
inline |
|
inline |
|
friend |
|
friend |
|
friend |
|
friend |
|
private |
|
private |
Compression algorithm.
|
private |
The length of data in encrypted block.
|
private |
Encryption algorithm.
|
private |
Length of the original IO size.
For reads it is an expected uncompressed length. For writes it is a length up to which the write is to be extended with a punch hole, if supported.
|
private |
Request type bit flags.