InnoDB Plugin 1.0 for MySQL 5.1 User's Guide  /  InnoDB Plugin Change History  /  Changes in InnoDB Plugin 1.0.4 (August 11, 2009)

12.6. Changes in InnoDB Plugin 1.0.4 (August 11, 2009)

Enabled inlining of functions and prefetch with Sun Studio.

Changed the defaults for innodb_sync_spin_loops from 20 to 30 and innodb_spin_wait_delay from 5 to 6.

Implemented adaptive flushing of dirty pages, which uses heuristics to avoid I/O bursts at checkpoint. A new parameter innodb_adaptive_flushing is added to control whether the new flushing algorithm should be used. See Section 7.11, “Controlling the Flushing Rate of Dirty Pages”.

Implemented I/O capacity tuning. A new parameter innodb_io_capacity is added to control the master threads I/O rate. (To preserve the former behavior, set this parameter to a value of 100.) The ibuf merge is also changed from synchronous to asynchronous. See Section 7.10, “Controlling the Master Thread I/O Rate”.

Introduced the PAUSE instruction inside spin-loop where available. See Section 7.12, “Using the PAUSE instruction in InnoDB spin loops”.

Fixed a crash on SET GLOBAL innodb_file_format=DEFAULT or SET GLOBAL innodb_file_format_check=DEFAULT.

Changed the default values for innodb_max_dirty_pages_pct, innodb_additional_mem_pool_size, innodb_buffer_pool_size, and innodb_log_buffer_size.

Enabled group commit functionality that was broken in 5.0 when distributed transactions were introduced. See Section 7.9, “Group Commit”.

Enabled the functionality of having multiple background threads, with two new configuration parameters, innodb_read_io_threads and innodb_write_io_threads. The Windows only parameter innodb_file_io_threads has been removed. See Section 7.8, “Multiple Background I/O Threads”.

Changed the linear read ahead algorithm and disabled random read ahead. Also introduced a new configuration parameter innodb_read_ahead_threshold to control the sensitivity of the linear read ahead. See Section 7.7, “Changes in the Read Ahead Algorithm”.

Standardized comments that allow the extraction of documentation from code base with the Doxygen tool.

Fixed a bug that could cause failures in secondary index lookups in consistent reads right after crash recovery.

Corrected the estimation of space needed on a compressed page when performing an update by delete-and-insert.

Removed the statically linked copies of the zlib and strings libraries from the binary Windows plugin. Invoke the copies of these libraries in the mysqld executable, like the binary InnoDB Plugin does on other platforms.

Trimmed the output of SHOW ENGINE INNODB MUTEX. See Section 8.8, “More Compact Output of SHOW ENGINE INNODB MUTEX.

On Microsoft Windows, make use of atomic memory access to implement mutexes and rw-locks more efficiently. On Sun Solaris 10, if GCC built-in functions for atomic memory access are unavailable, use library functions instead. See Section 7.2, “Faster Locking for Improved Scalability”.

Fixed MySQL Bug #44032: in ROW_FORMAT=REDUNDANT, update UTF-8 CHAR to/from NULL is not in-place.

Fixed MySQL Bug #43660: SHOW INDEXES/ANALYZE does not update cardinality for indexes of InnoDB table.

Made the parameter innodb_change_buffering settable by mysqld start-up option. Due to a programming mistake, it was only possible to set this parameter by the SET GLOBAL command in InnoDB Plugin 1.0.3.

Added a parameter innodb_spin_wait_delay for controlling the polling of mutexes and rw-locks. See Section 7.13, “Control of Spin Lock Polling”.

In consistent reads, issue an error message on attempts to use newly created indexes that may lack required history. See Section 2.6, “Limitations”.

User Comments
Sign Up Login You must be logged in to post a comment.