3911 kevin.lewis@stripped 2012-05-29
Full 5980 patch
Recent changes include code related to DIISCARD/IMPORT of remote files.
This also includes a new testcase called innodb-wl5522-wl5980.test that
combines these two features.
added:
mysql-test/include/shutdown_mysqld.inc
mysql-test/include/start_mysqld.inc
mysql-test/r/partition_innodb_tablespace.result
mysql-test/suite/innodb/r/innodb-multiple-tablespaces.result
mysql-test/suite/innodb/r/innodb-tablespace.result
mysql-test/suite/innodb/r/innodb-wl5522-wl5980.result
mysql-test/suite/innodb/r/innodb_wl5980_linux.result
mysql-test/suite/innodb/t/innodb-multiple-tablespaces.test
mysql-test/suite/innodb/t/innodb-tablespace.test
mysql-test/suite/innodb/t/innodb-wl5522-wl5980.test
mysql-test/suite/innodb/t/innodb_wl5980_linux.test
mysql-test/suite/parts/r/partition_reorganize_innodb.result
mysql-test/suite/parts/r/partition_reorganize_myisam.result
mysql-test/suite/parts/t/partition_reorganize_innodb.test
mysql-test/suite/parts/t/partition_reorganize_myisam.test
mysql-test/t/partition_innodb_tablespace.test
modified:
include/my_base.h
mysql-test/r/mysqlshow.result
mysql-test/suite/innodb/r/innodb-alter-discard.result
mysql-test/suite/innodb/r/innodb-restart.result
mysql-test/suite/innodb/r/innodb-system-table-view.result
mysql-test/suite/innodb/r/innodb_16k.result
mysql-test/suite/innodb/r/innodb_4k.result
mysql-test/suite/innodb/r/innodb_8k.result
mysql-test/suite/innodb/t/innodb-alter-discard.test
mysql-test/suite/innodb/t/innodb-restart.test
mysql-test/suite/innodb/t/innodb-system-table-view.test
mysql-test/suite/innodb/t/innodb_16k.test
mysql-test/suite/innodb/t/innodb_4k.test
mysql-test/suite/innodb/t/innodb_8k.test
mysql-test/suite/parts/r/partition_basic_symlink_innodb.result
mysql-test/suite/parts/t/partition_basic_symlink_innodb.test
mysys/my_handler_errors.h
sql/ha_partition.cc
sql/ha_partition.h
sql/handler.cc
sql/sql_partition.cc
sql/sql_partition.h
sql/sql_table.cc
storage/innobase/dict/dict0boot.cc
storage/innobase/dict/dict0crea.cc
storage/innobase/dict/dict0dict.cc
storage/innobase/dict/dict0load.cc
storage/innobase/fil/fil0fil.cc
storage/innobase/fts/fts0fts.cc
storage/innobase/handler/ha_innodb.cc
storage/innobase/handler/ha_innodb.h
storage/innobase/handler/handler0alter.cc
storage/innobase/handler/i_s.cc
storage/innobase/handler/i_s.h
storage/innobase/include/db0err.h
storage/innobase/include/dict0boot.h
storage/innobase/include/dict0crea.h
storage/innobase/include/dict0dict.h
storage/innobase/include/dict0dict.ic
storage/innobase/include/dict0load.h
storage/innobase/include/dict0mem.h
storage/innobase/include/fil0fil.h
storage/innobase/include/fsp0fsp.h
storage/innobase/include/fsp0fsp.ic
storage/innobase/include/os0file.h
storage/innobase/include/row0merge.h
storage/innobase/include/row0mysql.h
storage/innobase/lock/lock0lock.cc
storage/innobase/os/os0file.cc
storage/innobase/pars/pars0pars.cc
storage/innobase/row/row0import.cc
storage/innobase/row/row0merge.cc
storage/innobase/row/row0mysql.cc
storage/innobase/srv/srv0start.cc
storage/innobase/trx/trx0rec.cc
storage/innobase/ut/ut0ut.cc
3910 Inaam Rana 2012-05-29
WL#5666: Tuning adaptive flushing
rb://1000
approved by: Sunny Bains
Changes in adaptive flushing based on work by Dimtri.
New Parameters:
===============
innodb_adaptive_flushing_lwm: low water mark in %age of log capacity at
which adaptive flushing kicks in. Default 10: Range 0 - 70 (note it is
%age of log_capacity instead of max_async_age for user friendliness)
innodb_max_dirty_pages_pct_lwm: low water mark of dirty pages in %age
where preflushing to control dirty page ratio kicks in. Default 0
(which has the special meaning of this value having no effect).
Range 0 - 99
innodb_max_io_capacity: The limit upto which we are allowed to stretch
io_capacity in case of emergency. Default: 400 (which is 2X of default
innodb_io_capacity). Range 100 - ~0
innodb_flushing_avg_loops: Number of iterations for which we keep the
previously calculated snapshot of the flushing state. This variable is
roughly a measure of how smooth you want the transition in the
flushing activity to be. The higher the value the smoother will be the
transition in flushing in face of rapidly changing workload. A lower
value implies that the flushing algorithm is more responsive but it
also means that flushing acitivity can become spiky when confronted
with a quickly changing workload. Default value is 30 and permissible
range is 1 – 1000.
All parameters are dynamic.
Existing Parameters:
====================
innodb_adaptive_flushing: same as before. Only now it will use the new
formula.
innodb_io_capacity: same as before. But now tied to
innodb_max_io_capacity. If user sets innodb_max_io_capacity <
innodb_io_capacity a warning will be issued and innodb_max_io_capacity
will be set equal to innodb_io_capacity. If user sets
innodb_io_capacity > innodb_max_io_capacity a warning will be issued
and innodb_io_capacity will be set equal to innodb_max_io_capacity.
innodb_max_dirty_pages_pct: same as before. But now tied to
innodb_max_dirty_pages_pct_lwm.
If user sets innodb_max_dirty_pct < innodb_max_dirty_pages_pct_lwm
a warning will be issued and innodb_max_dirty_pages_pct_lwm will be
lowered to new innodb_max_dirty_pages_pct.
If user sets innodb_max_dirty_pct_lwm > innodb_max_dirty_pages_pct
a warning will be issued and innodb_max_dirty_pages_pct_lwm will be set
equal to innodb_max_dirty_pages_pct.
added:
mysql-test/suite/sys_vars/r/innodb_adaptive_flushing_lwm_basic.result
mysql-test/suite/sys_vars/r/innodb_flushing_avg_loops_basic.result
mysql-test/suite/sys_vars/r/innodb_max_dirty_pages_pct_lwm_basic.result
mysql-test/suite/sys_vars/r/innodb_max_io_capacity_basic.result
mysql-test/suite/sys_vars/t/innodb_adaptive_flushing_lwm_basic.test
mysql-test/suite/sys_vars/t/innodb_flushing_avg_loops_basic.test
mysql-test/suite/sys_vars/t/innodb_max_dirty_pages_pct_lwm_basic.test
mysql-test/suite/sys_vars/t/innodb_max_io_capacity_basic.test
modified:
mysql-test/suite/innodb/r/innodb_monitor.result
mysql-test/suite/sys_vars/r/innodb_io_capacity_basic.result
mysql-test/suite/sys_vars/r/innodb_max_dirty_pages_pct_basic.result
mysql-test/suite/sys_vars/r/innodb_monitor_disable_basic.result
mysql-test/suite/sys_vars/r/innodb_monitor_enable_basic.result
mysql-test/suite/sys_vars/r/innodb_monitor_reset_all_basic.result
mysql-test/suite/sys_vars/r/innodb_monitor_reset_basic.result
mysql-test/suite/sys_vars/t/innodb_io_capacity_basic.test
mysql-test/suite/sys_vars/t/innodb_max_dirty_pages_pct_basic.test
storage/innobase/buf/buf0flu.cc
storage/innobase/handler/ha_innodb.cc
storage/innobase/include/buf0flu.h
storage/innobase/include/log0log.h
storage/innobase/include/log0log.ic
storage/innobase/include/srv0mon.h
storage/innobase/include/srv0srv.h
storage/innobase/log/log0log.cc
storage/innobase/srv/srv0mon.cc
storage/innobase/srv/srv0srv.cc
Diff too large for email (13450 lines, the limit is 10000).
No bundle (reason: useless for push emails).| Thread |
|---|
| • bzr push into mysql-trunk branch (kevin.lewis:3910 to 3911) | kevin.lewis | 30 May |