32 #include "fsp0types.h" 
   35 #ifndef UNIV_HOTBACKUP 
   46 typedef UT_LIST_BASE_NODE_T(
trx_t) trx_list_t;
 
  189 extern uint                     trx_rseg_n_slots_debug;
 
  270         __attribute__((nonnull, warn_unused_result));
 
  272 #if defined UNIV_DEBUG || defined UNIV_BLOB_LIGHT_DEBUG 
  278 trx_assert_recovered(
 
  281         __attribute__((warn_unused_result));
 
  292         const char*     file_name,
 
  379 trx_sys_any_active_transactions(
void);
 
  387 trx_sys_print_mysql_binlog_offset_from_page(
 
  400 trx_sys_read_file_format_id(
 
  402         const char *pathname,   
 
  411 trx_sys_read_pertable_file_format_id(
 
  413         const char *pathname,   
 
  432         ulint           max_format_id); 
 
  457 trx_sys_validate_trx_list(
void);
 
  462 #define TRX_SYS_SYSTEM_RSEG_ID  0 
  465 #define TRX_SYS_SPACE   0        
  467 #define TRX_SYS_PAGE_NO FSP_TRX_SYS_PAGE_NO 
  470 #define TRX_SYS         FSEG_PAGE_DATA 
  474 #define TRX_SYS_TRX_ID_STORE    0        
  486 #define TRX_SYS_FSEG_HEADER     8        
  489 #define TRX_SYS_RSEGS           (8 + FSEG_HEADER_SIZE) 
  500 #define TRX_SYS_N_RSEGS                 128 
  504 #define TRX_SYS_OLD_N_RSEGS             256 
  509 #define TRX_SYS_MYSQL_LOG_NAME_LEN      512 
  511 #define TRX_SYS_MYSQL_LOG_MAGIC_N       873422344 
  513 #if UNIV_PAGE_SIZE_MIN < 4096 
  514 # error "UNIV_PAGE_SIZE_MIN < 4096" 
  518 #define TRX_SYS_MYSQL_MASTER_LOG_INFO   (UNIV_PAGE_SIZE - 2000) 
  521 #define TRX_SYS_MYSQL_LOG_INFO          (UNIV_PAGE_SIZE - 1000) 
  522 #define TRX_SYS_MYSQL_LOG_MAGIC_N_FLD   0        
  526 #define TRX_SYS_MYSQL_LOG_OFFSET_HIGH   4        
  528 #define TRX_SYS_MYSQL_LOG_OFFSET_LOW    8        
  530 #define TRX_SYS_MYSQL_LOG_NAME          12       
  535 #define TRX_SYS_DOUBLEWRITE             (UNIV_PAGE_SIZE - 200) 
  537 #define TRX_SYS_DOUBLEWRITE_FSEG        0        
  540 #define TRX_SYS_DOUBLEWRITE_MAGIC       FSEG_HEADER_SIZE 
  545 #define TRX_SYS_DOUBLEWRITE_BLOCK1      (4 + FSEG_HEADER_SIZE) 
  552 #define TRX_SYS_DOUBLEWRITE_BLOCK2      (8 + FSEG_HEADER_SIZE) 
  558 #define TRX_SYS_DOUBLEWRITE_REPEAT      12       
  571 #define TRX_SYS_DOUBLEWRITE_SPACE_ID_STORED (24 + FSEG_HEADER_SIZE) 
  575 #define TRX_SYS_DOUBLEWRITE_MAGIC_N     536853855 
  577 #define TRX_SYS_DOUBLEWRITE_SPACE_ID_STORED_N 1783657386 
  580 #define TRX_SYS_DOUBLEWRITE_BLOCK_SIZE  FSP_EXTENT_SIZE 
  587 #define TRX_SYS_FILE_FORMAT_TAG         (UNIV_PAGE_SIZE - 16) 
  591 #define TRX_SYS_FILE_FORMAT_TAG_MAGIC_N_LOW     3645922177UL 
  593 #define TRX_SYS_FILE_FORMAT_TAG_MAGIC_N_HIGH    2745987765UL 
  596 #define TRX_SYS_FILE_FORMAT_TAG_MAGIC_N                                 \ 
  597         ((ib_uint64_t) TRX_SYS_FILE_FORMAT_TAG_MAGIC_N_HIGH << 32       \ 
  598          | TRX_SYS_FILE_FORMAT_TAG_MAGIC_N_LOW) 
  601 #ifndef UNIV_HOTBACKUP 
  667 #define TRX_SYS_TRX_ID_WRITE_MARGIN     256 
  671 #include "trx0sys.ic"