[Commits] 91efcc6392c: Better comment from Monty for code in make_join_select

Sergei Petrunia psergey at askmonty.org
Fri May 17 19:17:19 EEST 2019

revision-id: 91efcc6392cef920aa3697dc9789830ae9cdd379 (mariadb-10.1.39-37-g91efcc6392c)
parent(s): c84f390df20c9fa385351d3f21a6f0f48dde1803
author: Sergei Petrunia
committer: Sergei Petrunia
timestamp: 2019-05-17 19:17:19 +0300

Better comment from Monty for code in make_join_select

 sql/sql_select.cc | 12 ++++++++++--
 1 file changed, 10 insertions(+), 2 deletions(-)

diff --git a/sql/sql_select.cc b/sql/sql_select.cc
index cb8c0429674..c1bec0f1c20 100644
--- a/sql/sql_select.cc
+++ b/sql/sql_select.cc
@@ -10027,8 +10027,16 @@ make_join_select(JOIN *join,SQL_SELECT *select,COND *cond)
 	    We plan to scan all rows.
 	    Check again if we should use an index.
-	    We could have used an column from a previous table in
-	    the index if we are using limit and this is the first table
+            There are two cases:
+            1) There could be an index usage the refers to a previous
+               table that we didn't consider before, but could be consider
+               now as a "last resort". For example
+               SELECT * from t1,t2 where t1.a between t2.a and t2.b;
+            2) If the current table is the first non const table
+               and there is a limit it still possibly beneficial
+               to use the index even if the index range is big as
+               we can stop when we've found limit rows.
             (1) - Don't switch the used index if we are using semi-join
                   LooseScan on this table. Using different index will not

More information about the commits mailing list