D.S

dev.mysql.com

MySQL: storage/innobase/include/log0recv.h File Reference

MySQL: storage/innobase/include/log0recv.h File Reference MySQL  8.0.0 Source Code Documentation Main Page Related Pages Modules Namespaces Classes Files File List File Members Classes | Macros | Typedefs | Enumerations | Functions | Variables log0recv.h File Reference Recovery. More... #include "univ.i" #include " ut0byte.h " #include " buf0types.h " #include " dict0types.h " #include " hash0hash.h " #include " log0log.h " #include " mtr0types.h " #include " ut0new.h " #include <list> #include <vector> #include <map> #include "log0recv.ic" Go to the source code of this file. Classes struct   recv_data_t   Block of log record data. More...   struct   recv_t   Stored log record struct. More...   struct   recv_addr_t   Hashed page file address struct. More...   struct   recv_dblwr_t   class   MetadataRecover   Class to parse persistent dynamic metadata redo log, store and merge them and apply them to in-memory table objects finally. More...   struct   recv_encryption   struct   recv_sys_t   Recovery system data structure. More...   Macros #define  recv_recover_page (jri, block)    recv_recover_page_func (jri, block)   Wrapper for recv_recover_page_func() . More...   #define  RECV_PARSING_BUF_SIZE    (2 * 1024 * 1024)   Size of the parsing buffer; it must accommodate RECV_SCAN_SIZE many times! More...   #define  RECV_SCAN_SIZE    (4 * UNIV_PAGE_SIZE)   Size of block reads when the log groups are scanned forward to do a roll-forward. More...   Typedefs typedef struct recv_encryption   recv_encryption_t   typedef std::vector< recv_encryption_t , ut_allocator < recv_encryption_t > >  encryption_list_t   Enumerations enum   recv_addr_state {    RECV_NOT_PROCESSED , RECV_BEING_READ , RECV_BEING_PROCESSED , RECV_PROCESSED ,    RECV_DISCARDED }   States of recv_addr_t . More...   Functions UNIV_INLINE bool  recv_recovery_is_on (void)   Returns TRUE if recovery is currently running. More...   void  recv_recover_page_func (ibool just_read_in, buf_block_t *block)   Applies the hashed log records to the page, if the page lsn is less than the lsn of a log record. More...   dberr_t   recv_recovery_from_checkpoint_start ( lsn_t flush_lsn)   Start recovering from a redo log checkpoint. More...   MetadataRecover *  recv_recovery_from_checkpoint_finish ()   Complete the recovery from the latest checkpoint. More...   void  recv_reset_logs ( lsn_t lsn)   Resets the logs. More...   void  recv_sys_create (void)   Creates the recovery system. More...   void  recv_sys_close (void)   Release recovery system mutexes. More...   void  recv_sys_mem_free (void)   Frees the recovery system memory. More...   void  recv_sys_init (ulint available_memory)   Inits the recovery system for a recovery operation. More...   void  recv_sys_debug_free (void)   Frees the recovery system. More...   void  recv_sys_var_init (void)   Reset the state of the recovery system variables. More...   void  recv_apply_hashed_log_recs (ibool allow_ibuf)   Empties the hash table of stored log records, applying them to appropriate pages. More...   Variables recv_sys_t *  recv_sys   The recovery system. More...   volatile bool  recv_recovery_on   TRUE when applying redo log records during crash recovery; FALSE otherwise. More...   bool  recv_no_ibuf_operations   If the following is TRUE, the buffer pool file pages must be invalidated after recovery and no ibuf operations are allowed; this becomes TRUE if the log record hash table becomes too full, and log records must be merged to file pages already before the recovery is finished: in this case no ibuf operations are allowed, as they could modify the pages read in the buffer pool before the pages have been recovered to the up-to-date state. More...   bool  recv_needed_recovery   TRUE when recv_init_crash_recovery() has been called. More...   bool  recv_no_log_write   TRUE if writing to the redo log (mtr_commit) is forbidden. More...   bool  recv_lsn_checks_on   TRUE if buf_page_is_corrupted() should check if the log sequence number (FIL_PAGE_LSN) is in the future. More...   ulint  recv_n_pool_free_frames   This many frames must be left free in the buffer pool when we scan the log and store the scanned log records in the buffer pool: we will use these free frames to read in pages when we start applying the log records to the database. More...   Detailed Description Recovery. Created 9/20/1997 Heikki Tuuri Macro Definition Documentation #define RECV_PARSING_BUF_SIZE   (2 * 1024 * 1024) Size of the parsing buffer; it must accommodate RECV_SCAN_SIZE many times! #define recv_recover_page (   jri,   block  )     recv_recover_page_func (jri, block) Wrapper for recv_recover_page_func() . Applies the hashed log records to the page, if the page lsn is less than the lsn of a log record. This can be called when a buffer page has just been read in, or also for a page already in the buffer pool. Parameters jri in: TRUE if just read in (the i/o handler calls this for a freshly read page) block in/out: the buffer block #define RECV_SC