MySQL 5.6.14 Source Code Document
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
fil_space_t Struct Reference
Collaboration diagram for fil_space_t:

Public Member Functions

 UT_LIST_BASE_NODE_T (fil_node_t) chain
 UT_LIST_NODE_T (fil_space_t) unflushed_spaces
 UT_LIST_NODE_T (fil_space_t) space_list

Public Attributes

char * name
ulint id
ib_int64_t tablespace_version
ibool mark
ibool stop_ios
ibool stop_new_ops
ulint purpose
ulint size
ulint flags
ulint n_reserved_extents
ulint n_pending_flushes
ulint n_pending_ops
hash_node_t hash
hash_node_t name_hash
rw_lock_t latch
bool is_in_unflushed_spaces
ulint magic_n

Detailed Description

Tablespace or log data space: let us call them by a common name space

Definition at line 184 of file fil0fil.cc.

Member Function Documentation

fil_space_t::UT_LIST_BASE_NODE_T ( fil_node_t  )

base node for the file chain

fil_space_t::UT_LIST_NODE_T ( fil_space_t  )

list of spaces with at least one unflushed file we have written to

fil_space_t::UT_LIST_NODE_T ( fil_space_t  )

list of all spaces

Member Data Documentation

ulint fil_space_t::flags

tablespace flags; see fsp_flags_is_valid(), fsp_flags_get_zip_size()

Definition at line 222 of file fil0fil.cc.

hash_node_t fil_space_t::hash

hash chain node

Definition at line 238 of file fil0fil.cc.

ulint fil_space_t::id

space id

Definition at line 187 of file fil0fil.cc.

bool fil_space_t::is_in_unflushed_spaces

true if this space is currently in unflushed_spaces

Definition at line 248 of file fil0fil.cc.

rw_lock_t fil_space_t::latch

latch protecting the file space storage allocation

Definition at line 241 of file fil0fil.cc.

ulint fil_space_t::magic_n

FIL_SPACE_MAGIC_N

Definition at line 252 of file fil0fil.cc.

ibool fil_space_t::mark

this is set to TRUE at database startup if the space corresponds to a table in the InnoDB data dictionary; so we can print a warning of orphaned tablespaces

Definition at line 194 of file fil0fil.cc.

ulint fil_space_t::n_pending_flushes

this is positive when flushing the tablespace to disk; dropping of the tablespace is forbidden if this is positive

Definition at line 228 of file fil0fil.cc.

ulint fil_space_t::n_pending_ops

this is positive when we have pending operations against this tablespace. The pending operations can be ibuf merges or lock validation code trying to read a block. Dropping of the tablespace is forbidden if this is positive

Definition at line 231 of file fil0fil.cc.

ulint fil_space_t::n_reserved_extents

number of reserved free extents for ongoing operations like B-tree page split

Definition at line 226 of file fil0fil.cc.

char* fil_space_t::name

space name = the path to the first file in it

Definition at line 185 of file fil0fil.cc.

hash_node_t fil_space_t::name_hash

hash chain the name_hash table

Definition at line 239 of file fil0fil.cc.

ulint fil_space_t::purpose

FIL_TABLESPACE, FIL_LOG, or FIL_ARCH_LOG

Definition at line 214 of file fil0fil.cc.

ulint fil_space_t::size

space size in pages; 0 if a single-table tablespace whose size we do not know yet; last incomplete megabytes in data files may be ignored if space == 0

Definition at line 218 of file fil0fil.cc.

ibool fil_space_t::stop_ios

TRUE if we want to rename the .ibd file of tablespace and want to stop temporarily posting of new i/o requests on the file

Definition at line 198 of file fil0fil.cc.

ibool fil_space_t::stop_new_ops

we set this TRUE when we start deleting a single-table tablespace. When this is set following new ops are not allowed: read IO request ibuf merge file flush Note that we can still possibly have new write operations because we don't check this flag when doing flush batches.

Definition at line 203 of file fil0fil.cc.

ib_int64_t fil_space_t::tablespace_version

in DISCARD/IMPORT this timestamp is used to check if we should ignore an insert buffer merge request for a page because it actually was for the previous incarnation of the space

Definition at line 189 of file fil0fil.cc.


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