![]()  | 
  
    MySQL 8.0.44
    
   Source Code Documentation 
   | 
 
Structure for persisting dynamic metadata of data dictionary. More...
#include <dict0dict.h>
Classes | |
| class | Enable_immediate | 
| Write dynamic metadata to DD buffer table immediately when such data is generated.  More... | |
Public Member Functions | |
| bool | check_persist_immediately () const | 
Public Attributes | |
| dirty_dict_tables | |
| List of tables whose dirty_status are marked as METADATA_DIRTY, or METADATA_BUFFERED.  More... | |
| 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... | |
| std::atomic< uint32_t > | num_dirty_tables | 
| Number of the tables which are of status METADATA_DIRTY.  More... | |
| std::atomic< bool > | m_persist_immediately | 
| If set, dynamic metadata is saved to DD buffer table immediately.  More... | |
| DDTableBuffer * | table_buffer | 
| DDTableBuffer table for persistent dynamic metadata.  More... | |
| Persisters * | persisters | 
| Collection of instances to persist dynamic metadata.  More... | |
Structure for persisting dynamic metadata of data dictionary.
      
  | 
  inline | 
| 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
| std::atomic<bool> dict_persist_t::m_persist_immediately | 
If set, dynamic metadata is saved to DD buffer table immediately.
Currently we consider only auto increment PM_TABLE_AUTO_INC. Corrupt index PM_INDEX_CORRUPTED is not needed to be saved immediately.
| 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.
| 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* dict_persist_t::persisters | 
Collection of instances to persist dynamic metadata.
| DDTableBuffer* dict_persist_t::table_buffer | 
DDTableBuffer table for persistent dynamic metadata.