/** Number of pages flushed via LRU. Protected by buf_pool.mutex.
Also included in buf_pool.stat.n_pages_written. */ extern ulint buf_lru_flush_page_count; /** Number of pages freed without flushing. Protected by buf_pool.mutex. */ extern ulint buf_lru_freed_page_count;
/** Flag indicating if the page_cleaner is in active state. */ extern Atomic_relaxed<bool> buf_page_cleaner_is_active;
/** Remove all dirty pages belonging to a given tablespace when we are deletingthedatafileofthattablespace. ThepagesstillremainapartofLRUandareevictedfrom thelistastheyagetowardsthetailoftheLRU.
@param id tablespace identifier */ void buf_flush_remove_pages(uint32_t id) noexcept;
/** Relocate a buffer control block in buf_pool.flush_list. @parambpagecontrolblockbeingmoved
@param dpage destination block; the page contents has already been copied */
ATTRIBUTE_COLD void buf_flush_relocate_on_flush_list(buf_page_t *bpage, buf_page_t *dpage)
noexcept; /** Complete write of a file page from buf_pool. @paramrequestwriterequest
@param error whether the write may have failed */ void buf_page_write_complete(const IORequest &request, bool error) noexcept;
/** Assign the full crc32 checksum for non-compressed page.
@param[in,out] page page to be updated */ void buf_flush_assign_full_crc32_checksum(byte* page) noexcept;
/** Initialize a page for writing to the tablespace. @param[in]blockbufferblock;NULLifbypassingthebufferpool @param[in,out]pagepageframe @param[in,out]page_zip_compressedpage,orNULLifuncompressed
@param[in] use_full_checksum whether tablespace uses full checksum */ void
buf_flush_init_for_writing( const buf_block_t* block,
byte* page, void* page_zip_, bool use_full_checksum) noexcept;
/** Try to flush dirty pages that belong to a given tablespace. @paramspacetablespace @paramn_flushednumberofpageswritten
@return whether the flush for some pages might not have been initiated */ bool buf_flush_list_space(fil_space_t *space, ulint *n_flushed= nullptr)
noexcept
MY_ATTRIBUTE((warn_unused_result));
/** Wait until all persistent pages are flushed up to a limit. @paramsync_lsnminimumcheckpoint
@param checkpoint whether an empty checkpoint needs to be written */
ATTRIBUTE_COLD void buf_flush_wait(lsn_t sync_lsn, bool checkpoint) noexcept; /** Initiate more eager page flushing if the log checkpoint age is too old. @paramlsnbuf_pool.get_oldest_modification(LSN_MAX)target
@param furious true=furious flushing, false=limit to innodb_io_capacity */
ATTRIBUTE_COLD void buf_flush_ahead(lsn_t lsn, bool furious) noexcept;
/** Wait for the persistent data to be written out. NOTE:Thecallingthreadisnotallowedtoholdanybufferpagelatches! @paramlsnminimumcheckpointtowaitfor
@param checkpoint whether an empty checkpoint needs to be written */
ATTRIBUTE_COLD void buf_flush_sync_batch(lsn_t lsn, bool checkpoint) noexcept;
Messung V0.5 in Prozent
¤ Dauer der Verarbeitung: 0.10 Sekunden
(vorverarbeitet am 2026-10-08)
¤
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.