• unknown's avatar
    Backport innodb_max_purge_lag from 4.1 · 743597ea
    unknown authored
    
    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.
    743597ea
row0mysql.c 75.4 KB