summaryrefslogtreecommitdiff
path: root/mysql-test/t/explain_json.test
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/t/explain_json.test
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/t/explain_json.test')
-rw-r--r--mysql-test/t/explain_json.test12
1 files changed, 12 insertions, 0 deletions
diff --git a/mysql-test/t/explain_json.test b/mysql-test/t/explain_json.test
index 32932e0ff69..6dc54f1492b 100644
--- a/mysql-test/t/explain_json.test
+++ b/mysql-test/t/explain_json.test
@@ -58,5 +58,17 @@ select * from t0 where
a > (select max(b) from t1 where t1.b=t0.a) or a < 3 ;
drop table t1;
+
+--echo #
+--echo # Join buffering
+--echo #
+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;
+
+drop table t1;
+
drop table t0;