diff options
author | unknown <marko@hundin.mysql.fi> | 2004-10-27 13:33:11 +0300 |
---|---|---|
committer | unknown <marko@hundin.mysql.fi> | 2004-10-27 13:33:11 +0300 |
commit | 743597ea96cbf227c2c5dd34b9837802d62ad834 (patch) | |
tree | 811cd8122c4f67f06ae87f7dde570b7aea9d484d /innobase/srv | |
parent | 9abe7d272bcd75ef4eb83a33f31a3c9b756317a1 (diff) | |
download | mariadb-git-743597ea96cbf227c2c5dd34b9837802d62ad834.tar.gz |
Backport innodb_max_purge_lag from 4.1
innobase/include/srv0srv.h:
Add configuration parameter srv_max_purge_lag.
Add global variable srv_dml_needed_delay.
innobase/include/trx0sys.h:
Add trx_sys->rseg_history_len
innobase/row/row0mysql.c:
Add row_mysql_delay_if_needed() for delaying INSERTs, UPDATEs and
DELETEs for srv_dml_needed_delay microseconds.
innobase/srv/srv0srv.c:
Define global variable srv_dml_needed_delay.
Define configuration parameter srv_max_purge_lag.
innobase/trx/trx0purge.c:
Update trx_sys->rseg_history_len.
trx_purge(): Compute 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 at InnoDB start-up.
sql/ha_innodb.h:
Add configuration parameter srv_max_purge_lag.
sql/mysqld.cc:
Add startup option innodb_max_purge_lag,
with default value 0 (meaning infinite, disabling the feature).
sql/set_var.cc:
Add global variable innodb_max_purge_lag.
Diffstat (limited to 'innobase/srv')
-rw-r--r-- | innobase/srv/srv0srv.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/innobase/srv/srv0srv.c b/innobase/srv/srv0srv.c index 0643ab96c1d..0a814268a36 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; @@ -841,6 +845,8 @@ srv_general_init(void) /*======================= InnoDB Server FIFO queue =======================*/ +/* Maximum allowable purge history length. <=0 means 'infinite'. */ +ulint srv_max_purge_lag = 0; /************************************************************************* Puts an OS thread to wait if there are too many concurrent threads |