Changeset: dfd4015551ee for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB/rev/dfd4015551ee
Modified Files:
        sql/backends/monet5/sql_optimizer.c
        
sql/test/BugTracker-2012/Tests/rewrite_like_into_likesubselect.Bug-3179.test
Branch: default
Log Message:

Also optimize queries hitting sys tables


diffs (228 lines):

diff --git a/sql/backends/monet5/sql_optimizer.c 
b/sql/backends/monet5/sql_optimizer.c
--- a/sql/backends/monet5/sql_optimizer.c
+++ b/sql/backends/monet5/sql_optimizer.c
@@ -88,9 +88,8 @@ SQLgetSpace(mvc *m, MalBlkPtr mb, int pr
                                size = SQLgetColumnSize(tr, c, access);
                                space += size;  // accumulate once per table
                                //lasttable = tname;     invalidate this attempt
-                               if( !prepare && size == 0  && ! t->system){
+                               if (!prepare && size == 0)
                                        setFunctionId(p, emptybindRef);
-                               }
                        }
                }
                if (getModuleId(p) == sqlRef && (getFunctionId(p) == 
bindidxRef)) {
@@ -106,9 +105,8 @@ SQLgetSpace(mvc *m, MalBlkPtr mb, int pr
                                if (i && isTable(i->t)) {
                                        size = SQLgetIdxSize(tr, i, access);
 
-                                       if( !prepare && size == 0 && ! 
i->t->system){
+                                       if (!prepare && size == 0)
                                                setFunctionId(p, 
emptybindidxRef);
-                                       }
                                }
                        }
                }
diff --git 
a/sql/test/BugTracker-2012/Tests/rewrite_like_into_likesubselect.Bug-3179.test 
b/sql/test/BugTracker-2012/Tests/rewrite_like_into_likesubselect.Bug-3179.test
--- 
a/sql/test/BugTracker-2012/Tests/rewrite_like_into_likesubselect.Bug-3179.test
+++ 
b/sql/test/BugTracker-2012/Tests/rewrite_like_into_likesubselect.Bug-3179.test
@@ -8,21 +8,19 @@ query T python .explain.function_histogr
 explain select name,func from functions where name like '%optimizers%'
 ----
 algebra.likeselect
+1
+algebra.projection
 2
 bat.pack
 5
 querylog.define
 1
 sql.bind
-4
+2
 sql.mvc
 1
-sql.projectdelta
-2
 sql.resultSet
 1
-sql.subdelta
-1
 sql.tid
 1
 user.main
@@ -32,21 +30,19 @@ query T python .explain.function_histogr
 explain select name,func from functions where name not like '%optimizers%'
 ----
 algebra.likeselect
+1
+algebra.projection
 2
 bat.pack
 5
 querylog.define
 1
 sql.bind
-4
+2
 sql.mvc
 1
-sql.projectdelta
-2
 sql.resultSet
 1
-sql.subdelta
-1
 sql.tid
 1
 user.main
@@ -56,21 +52,19 @@ query T python .explain.function_histogr
 explain select name,func from functions where name ilike '%optimizers%'
 ----
 algebra.likeselect
+1
+algebra.projection
 2
 bat.pack
 5
 querylog.define
 1
 sql.bind
-4
+2
 sql.mvc
 1
-sql.projectdelta
-2
 sql.resultSet
 1
-sql.subdelta
-1
 sql.tid
 1
 user.main
@@ -80,21 +74,19 @@ query T python .explain.function_histogr
 explain select name,func from functions where name not ilike '%optimizers%'
 ----
 algebra.likeselect
+1
+algebra.projection
 2
 bat.pack
 5
 querylog.define
 1
 sql.bind
-4
+2
 sql.mvc
 1
-sql.projectdelta
-2
 sql.resultSet
 1
-sql.subdelta
-1
 sql.tid
 1
 user.main
@@ -132,21 +124,19 @@ query T python .explain.function_histogr
 explain select name,func from functions where mycontains(name, 'optimizers')
 ----
 algebra.likeselect
+1
+algebra.projection
 2
 bat.pack
 5
 querylog.define
 1
 sql.bind
-4
+2
 sql.mvc
 1
-sql.projectdelta
-2
 sql.resultSet
 1
-sql.subdelta
-1
 sql.tid
 1
 user.main
@@ -156,21 +146,19 @@ query T python .explain.function_histogr
 explain select name,func from functions where not_mycontains(name, 
'optimizers')
 ----
 algebra.likeselect
+1
+algebra.projection
 2
 bat.pack
 5
 querylog.define
 1
 sql.bind
-4
+2
 sql.mvc
 1
-sql.projectdelta
-2
 sql.resultSet
 1
-sql.subdelta
-1
 sql.tid
 1
 user.main
@@ -180,21 +168,19 @@ query T python .explain.function_histogr
 explain select name,func from functions where imycontains(name, 'optimizers')
 ----
 algebra.likeselect
+1
+algebra.projection
 2
 bat.pack
 5
 querylog.define
 1
 sql.bind
-4
+2
 sql.mvc
 1
-sql.projectdelta
-2
 sql.resultSet
 1
-sql.subdelta
-1
 sql.tid
 1
 user.main
@@ -204,21 +190,19 @@ query T python .explain.function_histogr
 explain select name,func from functions where not_imycontains(name, 
'optimizers')
 ----
 algebra.likeselect
+1
+algebra.projection
 2
 bat.pack
 5
 querylog.define
 1
 sql.bind
-4
+2
 sql.mvc
 1
-sql.projectdelta
-2
 sql.resultSet
 1
-sql.subdelta
-1
 sql.tid
 1
 user.main
_______________________________________________
checkin-list mailing list -- [email protected]
To unsubscribe send an email to [email protected]

Reply via email to