summaryrefslogtreecommitdiff
path: root/sql/sql_explain.h
diff options
context:
space:
mode:
authorSergei Petrunia <psergey@askmonty.org>2014-08-12 18:14:56 +0400
committerSergei Petrunia <psergey@askmonty.org>2014-08-12 18:14:56 +0400
commita9d43d70f5d83ac652fd970f5b2b8dfdb77c1136 (patch)
tree71150b0b2b3a91a691714da9a152cb095432a5f5 /sql/sql_explain.h
parent84485dbe7c994ad938cd2ee90d5dee96059192e2 (diff)
downloadmariadb-git-a9d43d70f5d83ac652fd970f5b2b8dfdb77c1136.tar.gz
EXPLAIN FORMAT=JSON: produce the 'ref' column.
Diffstat (limited to 'sql/sql_explain.h')
-rw-r--r--sql/sql_explain.h15
1 files changed, 10 insertions, 5 deletions
diff --git a/sql/sql_explain.h b/sql/sql_explain.h
index 8708a74e661..26aa5753900 100644
--- a/sql/sql_explain.h
+++ b/sql/sql_explain.h
@@ -464,6 +464,13 @@ private:
};
+class String_list: public List<char>
+{
+public:
+ bool append_str(MEM_ROOT *mem_root, const char *str);
+};
+
+
/*
EXPLAIN data structure for a single JOIN_TAB.
*/
@@ -489,9 +496,8 @@ public:
StringBuffer<32> used_partitions;
bool used_partitions_set;
- /* Empty string means "NULL" will be printed */
- List<char> possible_keys;
- //StringBuffer<32> possible_keys_str;
+ /* Empty means "NULL" will be printed */
+ String_list possible_keys;
/*
Index use: key name and length.
@@ -509,8 +515,7 @@ public:
*/
Explain_index_use hash_next_key;
- bool ref_set; /* not set means 'NULL' should be printed */
- StringBuffer<32> ref;
+ String_list ref_list;
bool rows_set; /* not set means 'NULL' should be printed */
ha_rows rows;