summaryrefslogtreecommitdiff
path: root/innobase/srv/srv0srv.c
diff options
context:
space:
mode:
authorunknown <marko@hundin.mysql.fi>2004-09-30 15:54:19 +0300
committerunknown <marko@hundin.mysql.fi>2004-09-30 15:54:19 +0300
commit927179ecd464e6dca78d0eabc2653ec63072456f (patch)
tree884195db59cc7fb8d862666885451f450071788d /innobase/srv/srv0srv.c
parent1dbc71afaafb50e81b37b3028ed6c0e610cd9140 (diff)
downloadmariadb-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/srv/srv0srv.c')
-rw-r--r--innobase/srv/srv0srv.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/innobase/srv/srv0srv.c b/innobase/srv/srv0srv.c
index 9b96d610f28..adffe06ef0a 100644
--- a/innobase/srv/srv0srv.c
+++ b/innobase/srv/srv0srv.c
@@ -58,6 +58,10 @@ ulint srv_activity_count = 0;
/* The following is the maximum allowed duration of a lock wait. */
ulint srv_fatal_semaphore_wait_threshold = 600;
+/* How much data manipulation language (DML) statements need to be delayed,
+in microseconds, in order to reduce the lagging of the purge thread. */
+ulint srv_dml_needed_delay = 0;
+
ibool srv_lock_timeout_and_monitor_active = FALSE;
ibool srv_error_monitor_active = FALSE;
@@ -258,6 +262,8 @@ disable adaptive hash indexes */
ibool srv_use_awe = FALSE;
ibool srv_use_adaptive_hash_indexes = TRUE;
+/* Maximum allowable purge history length. <=0 means 'infinite'. */
+ulint srv_max_purge_lag = 0;
/*-------------------------------------------*/
ulint srv_n_spin_wait_rounds = 20;