# should be done or reviewed by the maintainer!
--- a/storage/innobase/handler/ha_innodb.cc
+++ b/storage/innobase/handler/ha_innodb.cc
-@@ -639,6 +639,16 @@
+@@ -641,6 +641,16 @@
trx_t* trx); /*!< in: transaction handle */
static SHOW_VAR innodb_status_variables[]= {
{"buffer_pool_pages_data",
(char*) &export_vars.innodb_buffer_pool_pages_data, SHOW_LONG},
{"buffer_pool_pages_dirty",
-@@ -653,8 +663,14 @@
+@@ -655,8 +665,14 @@
{"buffer_pool_pages_latched",
(char*) &export_vars.innodb_buffer_pool_pages_latched, SHOW_LONG},
#endif /* UNIV_DEBUG */
+ (char*) &export_vars.innodb_buffer_pool_pages_old, SHOW_LONG},
{"buffer_pool_pages_total",
(char*) &export_vars.innodb_buffer_pool_pages_total, SHOW_LONG},
- {"buffer_pool_read_ahead",
-@@ -669,6 +685,12 @@
+ {"buffer_pool_read_ahead_rnd",
+@@ -673,6 +689,12 @@
(char*) &export_vars.innodb_buffer_pool_wait_free, SHOW_LONG},
{"buffer_pool_write_requests",
(char*) &export_vars.innodb_buffer_pool_write_requests, SHOW_LONG},
{"data_fsyncs",
(char*) &export_vars.innodb_data_fsyncs, SHOW_LONG},
{"data_pending_fsyncs",
-@@ -695,12 +717,66 @@
+@@ -699,12 +721,66 @@
(char*) &export_vars.innodb_dict_tables, SHOW_LONG},
{"have_atomic_builtins",
(char*) &export_vars.innodb_have_atomic_builtins, SHOW_BOOL},
{"os_log_fsyncs",
(char*) &export_vars.innodb_os_log_fsyncs, SHOW_LONG},
{"os_log_pending_fsyncs",
-@@ -717,8 +793,14 @@
+@@ -721,8 +797,14 @@
(char*) &export_vars.innodb_pages_read, SHOW_LONG},
{"pages_written",
(char*) &export_vars.innodb_pages_written, SHOW_LONG},
{"row_lock_time",
(char*) &export_vars.innodb_row_lock_time, SHOW_LONGLONG},
{"row_lock_time_avg",
-@@ -735,8 +817,20 @@
+@@ -739,8 +821,20 @@
(char*) &export_vars.innodb_rows_read, SHOW_LONG},
{"rows_updated",
(char*) &export_vars.innodb_rows_updated, SHOW_LONG},
/** The lock system */
--- a/storage/innobase/include/srv0srv.h
+++ b/storage/innobase/include/srv0srv.h
-@@ -731,6 +731,11 @@
+@@ -739,6 +739,11 @@
/** Status variables to be passed to MySQL */
struct export_var_struct{
ulint innodb_data_pending_reads; /*!< Pending reads */
ulint innodb_data_pending_writes; /*!< Pending writes */
ulint innodb_data_pending_fsyncs; /*!< Pending fsyncs */
-@@ -748,6 +753,9 @@
+@@ -756,6 +761,9 @@
#ifdef UNIV_DEBUG
ulint innodb_buffer_pool_pages_latched; /*!< Latched pages */
#endif /* UNIV_DEBUG */
ulint innodb_buffer_pool_read_requests; /*!< buf_pool->stat.n_page_gets */
ulint innodb_buffer_pool_reads; /*!< srv_buf_pool_reads */
ulint innodb_buffer_pool_wait_free; /*!< srv_buf_pool_wait_free */
-@@ -756,13 +764,43 @@
- ulint innodb_buffer_pool_write_requests;/*!< srv_buf_pool_write_requests */
+@@ -765,13 +773,43 @@
+ ulint innodb_buffer_pool_read_ahead_rnd;/*!< srv_read_ahead_rnd */
ulint innodb_buffer_pool_read_ahead; /*!< srv_read_ahead */
ulint innodb_buffer_pool_read_ahead_evicted;/*!< srv_read_ahead evicted*/
+ ulint innodb_checkpoint_age;
ulint innodb_os_log_written; /*!< srv_os_log_written */
ulint innodb_os_log_fsyncs; /*!< fil_n_log_flushes */
ulint innodb_os_log_pending_writes; /*!< srv_os_log_pending_writes */
-@@ -771,6 +809,8 @@
+@@ -780,6 +818,8 @@
ulint innodb_pages_created; /*!< buf_pool->stat.n_pages_created */
ulint innodb_pages_read; /*!< buf_pool->stat.n_pages_read */
ulint innodb_pages_written; /*!< buf_pool->stat.n_pages_written */
ulint innodb_row_lock_waits; /*!< srv_n_lock_wait_count */
ulint innodb_row_lock_current_waits; /*!< srv_n_lock_wait_current_count */
ib_int64_t innodb_row_lock_time; /*!< srv_n_lock_wait_time
-@@ -780,11 +820,18 @@
+@@ -789,11 +829,18 @@
/ srv_n_lock_wait_count */
ulint innodb_row_lock_time_max; /*!< srv_n_lock_max_wait_time
/ 1000 */
/** Thread slot in the thread table */
--- a/storage/innobase/include/sync0sync.h
+++ b/storage/innobase/include/sync0sync.h
-@@ -771,6 +771,10 @@
+@@ -767,6 +767,10 @@
#define SYNC_SPIN_ROUNDS srv_n_spin_wait_rounds
}
--- a/storage/innobase/srv/srv0srv.c
+++ b/storage/innobase/srv/srv0srv.c
-@@ -2253,12 +2253,49 @@
+@@ -2259,12 +2259,49 @@
ulint LRU_len;
ulint free_len;
ulint flush_list_len;
export_vars.innodb_data_pending_reads
= os_n_pending_reads;
export_vars.innodb_data_pending_writes
-@@ -2295,6 +2332,92 @@
+@@ -2303,6 +2340,92 @@
export_vars.innodb_buffer_pool_pages_misc
= buf_pool_get_n_pages() - LRU_len - free_len;