-
Notifications
You must be signed in to change notification settings - Fork 3.9k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Bug #30473261: CONVERT THE INDEX SUBQUERY ENGINES INTO USING THE ITER…
…ATOR EXECUTOR [patch 3/10, hashed refs] Make RefIterator support hashed refs. Most index lookups (ref accesses) follow a pattern where the index' parts are matched 1:1 with a set of items, e.g. an index on (a,b) could have a lookup a=3,b=t1.other_b. However, as a special case, temporary tables may need indexes over a set of fields that are so large that they cannot be part of a unique index (e.g. blobs, or a large set of fields). In this case, the index is over a single column (a non-unique numeric hash of all the fields involved), and the TABLE_REF construction takes a rather different form, with each field being hashed into this column. We need to handle this correctly in RefIterator, and also print this correctly in EXPLAIN, even though we no longer have a 1:1 match between parts of the lookup key (TABLE_REF) and fields in the index (key_parts in KEY). This is needed for the next patch in the series. Stricly speaking, it only uses hashed refs in (forward-scanning) RefIterator, but for orthogonality, we add it to all paths where it is easy to do so. Change-Id: If8442551d29ac76914e94470169a233812052638
- Loading branch information
Steinar H. Gunderson
committed
Dec 20, 2019
1 parent
a5f60bf
commit 7493ae4
Showing
3 changed files
with
56 additions
and
9 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters