MySQL  8.0.20
Source Code Documentation
dict_persist_t Struct Reference

Structure for persisting dynamic metadata of data dictionary. More...

#include <dict0dict.h>

Public Attributes

ib_mutex_t mutex
 Mutex to protect data in this structure, also the dict_table_t::dirty_status and dict_table_t::in_dirty_dict_tables_list This mutex should be low-level one so that it can be used widely when necessary, so its level had to be above SYNC_LOG. More...
 
 dirty_dict_tables
 List of tables whose dirty_status are marked as METADATA_DIRTY, or METADATA_BUFFERED. More...
 
std::atomic< uint32_t > num_dirty_tables
 Number of the tables which are of status METADATA_DIRTY. More...
 
DDTableBuffertable_buffer
 DDTableBuffer table for persistent dynamic metadata. More...
 
Persisterspersisters
 Collection of instances to persist dynamic metadata. More...
 

Detailed Description

Structure for persisting dynamic metadata of data dictionary.

Member Data Documentation

◆ dirty_dict_tables

dict_persist_t::dirty_dict_tables

List of tables whose dirty_status are marked as METADATA_DIRTY, or METADATA_BUFFERED.

It's protected by the mutex

◆ mutex

ib_mutex_t dict_persist_t::mutex

Mutex to protect data in this structure, also the dict_table_t::dirty_status and dict_table_t::in_dirty_dict_tables_list This mutex should be low-level one so that it can be used widely when necessary, so its level had to be above SYNC_LOG.

However, after this mutex, persister may have to access B-tree and require tree latch, the latch level of this mutex then has to be right before the SYNC_INDEX_TREE.

◆ num_dirty_tables

std::atomic<uint32_t> dict_persist_t::num_dirty_tables

Number of the tables which are of status METADATA_DIRTY.

It's protected by the mutex

◆ persisters

Persisters* dict_persist_t::persisters

Collection of instances to persist dynamic metadata.

◆ table_buffer

DDTableBuffer* dict_persist_t::table_buffer

DDTableBuffer table for persistent dynamic metadata.


The documentation for this struct was generated from the following file: