diff options
author | unknown <marko@hundin.mysql.fi> | 2004-09-30 15:54:19 +0300 |
---|---|---|
committer | unknown <marko@hundin.mysql.fi> | 2004-09-30 15:54:19 +0300 |
commit | 927179ecd464e6dca78d0eabc2653ec63072456f (patch) | |
tree | 884195db59cc7fb8d862666885451f450071788d /innobase/include | |
parent | 1dbc71afaafb50e81b37b3028ed6c0e610cd9140 (diff) | |
download | mariadb-git-927179ecd464e6dca78d0eabc2653ec63072456f.tar.gz |
InnoDB: implement innodb_max_purge_lag
innobase/include/srv0srv.h:
Added srv_max_purge_lag and srv_dml_needed_delay
innobase/include/trx0sys.h:
Added trx_sys->rseg_history_len
innobase/row/row0mysql.c:
Added row_mysql_delay_if_needed()
innobase/srv/srv0srv.c:
Added srv_max_purge_lag and srv_dml_needed_delay
innobase/trx/trx0purge.c:
Update trx_sys->rseg_history_len.
Calculate srv_dml_needed_delay from srv_max_purge_lag
and trx_sys->rseg_history_len.
innobase/trx/trx0rseg.c:
Initialize trx_sys->rseg_history_len
sql/ha_innodb.h:
Add srv_max_purge_lag
sql/mysqld.cc:
Add parameter innodb_max_purge_lag
sql/set_var.cc:
Add global variable innodb_max_purge_lag
Diffstat (limited to 'innobase/include')
-rw-r--r-- | innobase/include/srv0srv.h | 3 | ||||
-rw-r--r-- | innobase/include/trx0sys.h | 4 |
2 files changed, 7 insertions, 0 deletions
diff --git a/innobase/include/srv0srv.h b/innobase/include/srv0srv.h index a5508b23a5c..2050e5b45c0 100644 --- a/innobase/include/srv0srv.h +++ b/innobase/include/srv0srv.h @@ -110,6 +110,8 @@ extern int srv_query_thread_priority; extern ibool srv_use_awe; extern ibool srv_use_adaptive_hash_indexes; + +extern ulint srv_max_purge_lag; /*-------------------------------------------*/ extern ulint srv_n_rows_inserted; @@ -163,6 +165,7 @@ extern ulint srv_test_array_size; extern ulint srv_activity_count; extern ulint srv_fatal_semaphore_wait_threshold; +extern ulint srv_dml_needed_delay; extern mutex_t* kernel_mutex_temp;/* mutex protecting the server, trx structs, query threads, and lock table: we allocate diff --git a/innobase/include/trx0sys.h b/innobase/include/trx0sys.h index 8f402881224..31e8607f8a0 100644 --- a/innobase/include/trx0sys.h +++ b/innobase/include/trx0sys.h @@ -432,6 +432,10 @@ struct trx_sys_struct{ trx_rseg_t* rseg_array[TRX_SYS_N_RSEGS]; /* Pointer array to rollback segments; NULL if slot not in use */ + ulint rseg_history_len;/* Length of the TRX_RSEG_HISTORY + list (update undo logs for committed + transactions), protected by + rseg->mutex */ UT_LIST_BASE_NODE_T(read_view_t) view_list; /* List of read views sorted on trx no, biggest first */ |