Bug #28357 | The metadata of memory storage engine cause excessive cost for index_merge | ||
---|---|---|---|
Submitted: | 10 May 2007 16:06 | Modified: | 12 Jul 2007 6:47 |
Reporter: | Georgi Kodinov | Email Updates: | |
Status: | Not a Bug | Impact on me: | |
Category: | MySQL Server: Optimizer | Severity: | S3 (Non-critical) |
Version: | 5.1-BK | OS: | Any |
Assigned to: | Georgi Kodinov | CPU Architecture: | Any |
[10 May 2007 16:06]
Georgi Kodinov
[10 May 2007 16:22]
Sveta Smirnova
Thank you for the report. Verified as described.
[16 May 2007 14:24]
Bugs System
A patch for this bug has been committed. After review, it may be pushed to the relevant source trees for release in the next version. You can access the patch from: http://lists.mysql.com/commits/26833 ChangeSet@1.2517, 2007-05-16 17:24:10+03:00, gkodinov@magare.gmz +3 -0 Bug #28357: The heap storage engine's metadata cause the optimizer to calculate prohibitively high cost for index_merge. This effects that index_merge access method is not considered for queries that would otherwise benefit from it. Fixed by seting block_size to UINT_MAX to represent the fact that the heap engine does no disk access.
[12 Jul 2007 6:47]
Sergey Petrunya
During analysis of this bug we've discovered BUG#29740 (wrong query results for HEAP + index_merge). That bug was fixed by disabling ROR scans for HEAP and RBTREE indexes. After BUG#29740, the problematic cost calculations are never performed. They are also not performed for the reason that HEAP table indexes do not have HA_KEYREAD_ONLY flag, and so get_index_only_read_time() (or its 5.0 equivalent) are never invoked. Considering the above, setting this bug to "Not a bug".