List:Internals« Previous MessageNext Message »
From:Baron Schwartz Date:September 3 2007 8:55pm
Subject:Re: what does "index map: N" mean?
View as plain text  
Hartmut Holzgraefe wrote:
> Michael Widenius wrote:
>> Hartmut, what information are you missing ?
>>
>> The above is as quite good way to describe it without going to pseudo 
>> code.
>>
>> The only things I can see that could be added are:
>>
>> - Indexes are numbered from 1 uppwards, in the same order as given
>>   by SHOW CREATE TABLE or SHOW INDEX
>>
>> - The index map is a bitmap that shows which index we will use for
>>   checking if we can use an index to retrieve the rows with either the
>>   range or index_merge methods.  Ie, the value 5 (= 1 + 4 ) would
>>   tell you that mysqld will try to use index 1 and 3 for this.
> 
> that is exactly what was missing: the explanation of "N"
> in the "(index map: N)" part ... which lead to all the
> guessing (both right and wrong) in this thread ...
> 

Now I'm MORE confused.  Is this a typo?  My interpretation of the value 
5 is indexes one and four are used, not one and three.  From 
http://dev.mysql.com/sources/doxygen/mysql-5.1/sql__select_8cc-source.html:

14452           {
14453             char buf[MAX_KEY/8+1];
14454             extra.append(STRING_WITH_LEN("; Range checked for each "
14455                                          "record (index map: 0x"));
14456             extra.append(tab->keys.print(buf));
14457             extra.append(')');
14458           }

tab->keys seems to be a Bitmap< 64 >, if the Doxygen-ized source is 
linked right.

I also think the index map might be redundant to possible_keys.  I 
haven't found a case where they differ, though they don't seem to come 
from the same code.  Can anyone confirm whether this is true?  Perhaps 
the index map is a subset (but not a proper subset) of possible_keys?

Thanks
Baron

PS I'm not sure this is 'urgent' for Monty -- it's not urgent for me -- 
but I appreciate everyone's time very much.
Thread
what does "index map: N" mean?Baron Schwartz29 Aug
  • Re: what does "index map: N" mean?Chad MILLER29 Aug
  • Re: what does "index map: N" mean?Sergey Petrunia29 Aug
    • Re: what does "index map: N" mean?Baron Schwartz29 Aug
      • Re: what does "index map: N" mean?Jay Pipes29 Aug
        • Re: what does "index map: N" mean?Baron Schwartz30 Aug
          • Re: what does "index map: N" mean?Hartmut Holzgraefe30 Aug
            • Re: what does "index map: N" mean?Paul DuBois30 Aug
Re: what does "index map: N" mean?Hartmut Holzgraefe3 Sep
  • Re: what does "index map: N" mean?Baron Schwartz3 Sep
    • Re: what does "index map: N" mean?Baron Schwartz5 Sep