Multiple Adaptive Hash Search Partitions¶
The InnoDB adaptive hash index can have contention issues on multi-core systems when you run a mix of read and write queries that need to scan secondary indexes. This feature splits the adaptive hash index across several equal-sized partitions to avoid such problems.
The number of adaptive hash partitions specified by the variable innodb_adaptive_hash_index_partitions
are created, and each hash index is assigned to a particular partition based on index_id
. Thus the effect from the AHI partitioning is greatest when the AHI accesses are uniformly spread over a large number of indexes (table primary and secondary keys). However, if there are certain few hot indexes, then their corresponding AHI partitions will be hot as well, while others might be completely unused.
Version Specific Information
Percona Server Version Comments 5.5.8-20.0 Initially released.
System Variables¶
-
variable
innodb_adaptive_hash_index_partitions
¶ Version Info: - 5.5.8-20.0 – Introduced
Command Line: Yes
Config File: Yes
Scope: Global
Dynamic: No
Variable Type: Numeric
Def: 1
Range: 1-64, (on 32-bit platform 1-32)
Specifies the number of partitions to use in the adaptive hash search process.
When set to one, no extra partitions are created and the normal process is in effect. When greater than one, the specified number of partitions are created across which to perform the adaptive search.
Other reading¶
Contact Us
For free technical help, visit the Percona Community Forum.To report bugs or submit feature requests, open a JIRA ticket.
For paid support and managed or professional services, contact Percona Sales.