1
0
mirror of https://github.com/MariaDB/server.git synced 2025-07-29 05:21:33 +03:00

Make EXPLAIN better at displaying MRR/BKA:

- "Using MRR" is no longer shown with range access.
- Instead, both range and BKA accesses will show one of the following:
  = "Rowid-ordered scan"
  = "Key-ordered scan"
  = "Key-ordered Rowid-ordered scan"
depending on whether DS-MRR implementation will do scan keys in order, rowids in order,
or both.
- The patch also introduces a way for other storage engines/MRR implementations to
  pass information to EXPLAIN output about the properties of employed MRR scans.
This commit is contained in:
Sergey Petrunya
2011-04-02 14:04:45 +04:00
parent 886d84d6d1
commit 997445bc8e
46 changed files with 624 additions and 467 deletions

View File

@ -637,7 +637,7 @@ public:
enum_nested_loop_state join_records(bool skip_last);
/* Add a comment on the join algorithm employed by the join cache */
void print_explain_comment(String *str);
virtual void print_explain_comment(String *str);
virtual ~JOIN_CACHE() {}
void reset_join(JOIN *j) { join= j; }
@ -1315,6 +1315,7 @@ public:
/* Check index condition of the joined table for a record from BKA cache */
bool skip_index_tuple(range_id_t range_info);
void print_explain_comment(String *str);
};
@ -1404,4 +1405,6 @@ public:
/* Check index condition of the joined table for a record from BKAH cache */
bool skip_index_tuple(range_id_t range_info);
void print_explain_comment(String *str);
};