summaryrefslogtreecommitdiff
path: root/storage/xtradb/include/srv0srv.h
diff options
context:
space:
mode:
authorJan Lindström <jan.lindstrom@mariadb.com>2016-09-22 16:32:26 +0300
committerJan Lindström <jan.lindstrom@mariadb.com>2016-09-22 16:38:24 +0300
commit2bedc3978b90bf5abe1029df393c63ced1849bed (patch)
tree1afa5fe2f562ae577566cf7a67e90fb110682c99 /storage/xtradb/include/srv0srv.h
parente387bfafbbb01ccfabeb2beb86efb199ca2ca3ac (diff)
downloadmariadb-git-2bedc3978b90bf5abe1029df393c63ced1849bed.tar.gz
MDEV-9931: InnoDB reads first page of every .ibd file at startup
Analysis: By design InnoDB was reading first page of every .ibd file at startup to find out is tablespace encrypted or not. This is because tablespace could have been encrypted always, not encrypted newer or encrypted based on configuration and this information can be find realible only from first page of .ibd file. Fix: Do not read first page of every .ibd file at startup. Instead whenever tablespace is first time accedded we will read the first page to find necessary information about tablespace encryption status. TODO: Add support for SYS_TABLEOPTIONS where all table options encryption information included will be stored.
Diffstat (limited to 'storage/xtradb/include/srv0srv.h')
-rw-r--r--storage/xtradb/include/srv0srv.h6
1 files changed, 5 insertions, 1 deletions
diff --git a/storage/xtradb/include/srv0srv.h b/storage/xtradb/include/srv0srv.h
index bd7a8731bdf..d95adf00814 100644
--- a/storage/xtradb/include/srv0srv.h
+++ b/storage/xtradb/include/srv0srv.h
@@ -186,6 +186,9 @@ struct srv_stats_t {
/** Number of lock waits that have been up to max time (i.e.) lock
wait timeout */
ulint_ctr_1_t n_lock_max_wait_time;
+
+ /** Number of times page 0 is read from tablespace */
+ ulint_ctr_64_t page0_read;
};
extern const char* srv_main_thread_op_info;
@@ -1161,7 +1164,8 @@ struct export_var_t{
ulint innodb_os_log_pending_fsyncs; /*!< fil_n_pending_log_flushes */
ulint innodb_page_size; /*!< UNIV_PAGE_SIZE */
ulint innodb_pages_created; /*!< buf_pool->stat.n_pages_created */
- ulint innodb_pages_read; /*!< buf_pool->stat.n_pages_read */
+ ulint innodb_pages_read; /*!< buf_pool->stat.n_pages_read*/
+ ulint innodb_page0_read; /*!< srv_stats.page0_read */
ulint innodb_pages_written; /*!< buf_pool->stat.n_pages_written */
ib_int64_t innodb_purge_trx_id;
ib_int64_t innodb_purge_undo_no;