![]()  | 
  
    MySQL 9.5.0
    
   Source Code Documentation 
   | 
 
Buffer for logging modifications during online index creation. More...
Public Attributes | |
| ddl::Unique_os_file_descriptor | file | 
| File descriptor.  More... | |
| ib_mutex_t | mutex | 
| Mutex protecting error, max_trx and tail.  More... | |
| page_no_map * | blobs | 
| Map of page numbers of off-page columns that have been freed during table-rebuilding ALTER TABLE (row_log_table_*); protected by index->lock X-latch only.  More... | |
| dict_table_t * | table | 
| Table that is being rebuilt, or NULL when this is a secondary index that is being created online.  More... | |
| bool | same_pk | 
| Whether the definition of the PRIMARY KEY has remained the same.  More... | |
| const dtuple_t * | add_cols | 
| Default values of added columns, or NULL.  More... | |
| const ulint * | col_map | 
| Mapping of old column numbers to new ones, or NULL if !table.  More... | |
| dberr_t | error | 
| Error that occurred during online table rebuild.  More... | |
| trx_id_t | max_trx | 
| Biggest observed trx_id in row_log_online_op(); protected by mutex and index->lock S-latch, or by index->lock X-latch only.  More... | |
| row_log_buf_t | tail | 
| writer context; protected by mutex and index->lock S-latch, or by index->lock X-latch only  More... | |
| row_log_buf_t | head | 
| Reader context; protected by MDL only; modifiable by row_log_apply_ops()  More... | |
| size_t | n_old_col | 
| number of non-virtual column in old table  More... | |
| size_t | n_old_vcol | 
| number of virtual column in old table  More... | |
| const char * | path | 
| Where to create temporary file during log operation.  More... | |
Buffer for logging modifications during online index creation.
All modifications to an index that is being created will be logged by row_log_online_op() to this buffer.
All modifications to a table that is being rebuilt will be logged by row_log_table_delete(), row_log_table_update(), row_log_table_insert() to this buffer.
When head.blocks == tail.blocks, the reader will access tail.block directly. When also head.bytes == tail.bytes, both counts will be reset to 0 and the file will be truncated.
| const dtuple_t* row_log_t::add_cols | 
Default values of added columns, or NULL.
| page_no_map* row_log_t::blobs | 
Map of page numbers of off-page columns that have been freed during table-rebuilding ALTER TABLE (row_log_table_*); protected by index->lock X-latch only.
| const ulint* row_log_t::col_map | 
Mapping of old column numbers to new ones, or NULL if !table.
| dberr_t row_log_t::error | 
Error that occurred during online table rebuild.
| ddl::Unique_os_file_descriptor row_log_t::file | 
File descriptor.
| row_log_buf_t row_log_t::head | 
Reader context; protected by MDL only; modifiable by row_log_apply_ops()
| trx_id_t row_log_t::max_trx | 
Biggest observed trx_id in row_log_online_op(); protected by mutex and index->lock S-latch, or by index->lock X-latch only.
| ib_mutex_t row_log_t::mutex | 
Mutex protecting error, max_trx and tail.
| size_t row_log_t::n_old_col | 
number of non-virtual column in old table
| size_t row_log_t::n_old_vcol | 
number of virtual column in old table
| const char* row_log_t::path | 
Where to create temporary file during log operation.
| bool row_log_t::same_pk | 
Whether the definition of the PRIMARY KEY has remained the same.
| dict_table_t* row_log_t::table | 
Table that is being rebuilt, or NULL when this is a secondary index that is being created online.
| row_log_buf_t row_log_t::tail | 
writer context; protected by mutex and index->lock S-latch, or by index->lock X-latch only