summaryrefslogtreecommitdiff
path: root/mysql-test/r/explain_json.result
diff options
context:
space:
mode:
authorSergei Petrunia <psergey@askmonty.org>2014-11-27 23:10:44 +0300
committerSergei Petrunia <psergey@askmonty.org>2014-11-27 23:10:44 +0300
commit461dbd80d2ea96034f330dd238282d2167ed2c4d (patch)
tree814c5063aeecce0af411b9bc2d85df520bd62f15 /mysql-test/r/explain_json.result
parent37c444e1a079b25d0a34efbbc2fadfae17999966 (diff)
downloadmariadb-git-461dbd80d2ea96034f330dd238282d2167ed2c4d.tar.gz
EXPLAIN FORMAT=JSON: support join buffering
- Basic support for JOIN buffering - The output is not polished but catches the main point: tab->select_cond and tab->cache_select->cond are printed separately. - Hash join support is poor still. - Also fixed identation in JOIN_TAB::save_explain_data
Diffstat (limited to 'mysql-test/r/explain_json.result')
-rw-r--r--mysql-test/r/explain_json.result33
1 files changed, 33 insertions, 0 deletions
diff --git a/mysql-test/r/explain_json.result b/mysql-test/r/explain_json.result
index d2225c1e189..ec775c8d618 100644
--- a/mysql-test/r/explain_json.result
+++ b/mysql-test/r/explain_json.result
@@ -309,4 +309,37 @@ EXPLAIN
}
}
drop table t1;
+#
+# Join buffering
+#
+create table t1 (a int, b int);
+insert into t1 select A.a+10*B.a, A.a+10*B.a from t0 A, t0 B;
+explain format=json
+select * from t1 A, t1 B where A.a=B.a and A.b < 3 and B.b < 5;
+EXPLAIN
+{
+ "query_block": {
+ "select_id": 1,
+ "table": {
+ "table_name": "A",
+ "access_type": "ALL",
+ "rows": 100,
+ "filtered": 100,
+ "attached_condition": "(A.b < 3)"
+ },
+ "block-nl-join": {
+ "table": {
+ "table_name": "B",
+ "access_type": "ALL",
+ "rows": 100,
+ "filtered": 100,
+ "attached_condition": "(B.b < 5)"
+ },
+ "buffer_type": "flat",
+ "join_type": "BNL",
+ "attached_condition": "(B.a = A.a)"
+ }
+ }
+}
+drop table t1;
drop table t0;