Changeset: 15df16e19816 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=15df16e19816
Modified Files:
        sql/backends/monet5/sql_user.c
        sql/server/rel_optimizer.c
        sql/server/rel_optimizer.h
        sql/server/rel_rel.c
        sql/server/rel_rel.h
Branch: default
Log Message:

more moving around of code...


diffs (161 lines):

diff --git a/sql/backends/monet5/sql_user.c b/sql/backends/monet5/sql_user.c
--- a/sql/backends/monet5/sql_user.c
+++ b/sql/backends/monet5/sql_user.c
@@ -18,7 +18,9 @@
 #include "monetdb_config.h"
 #include "sql_user.h"
 #include "sql_mvc.h"
+#include "sql_privileges.h"
 #include "bat5.h"
+#include "mal_interpreter.h"
 #include "mal_authorize.h"
 #include "mal_recycle.h"
 #include "mcrypt.h"
diff --git a/sql/server/rel_optimizer.c b/sql/server/rel_optimizer.c
--- a/sql/server/rel_optimizer.c
+++ b/sql/server/rel_optimizer.c
@@ -5380,7 +5380,6 @@ rel_mark_used(mvc *sql, sql_rel *rel, in
 }
 
 static sql_rel * rel_dce_sub(mvc *sql, sql_rel *rel);
-static sql_rel * rel_dce(mvc *sql, sql_rel *rel);
 
 static sql_rel *
 rel_remove_unused(mvc *sql, sql_rel *rel) 
@@ -5654,7 +5653,7 @@ rel_add_projects(mvc *sql, sql_rel *rel)
        return rel;
 }
 
-static sql_rel *
+sql_rel *
 rel_dce(mvc *sql, sql_rel *rel)
 {
        rel = rel_add_projects(sql, rel);
@@ -6908,10 +6907,12 @@ rel_merge_table_rewrite(int *changes, mv
                                        int skip = 0, j;
 
                                        /* do not include empty partitions */
+                                       /*
                                        if ((nrel || nt->next) && 
                                           pt && isTable(pt) && pt->access == 
TABLE_READONLY && !store_funcs.count_col(sql->session->tr, 
pt->columns.set->h->data, 1)){
                                                continue;
                                        }
+                                       */
 
                                        MT_lock_set(&prel->exps->ht_lock);
                                        prel->exps->ht = NULL;
@@ -7334,48 +7335,6 @@ rel_apply_rename(mvc *sql, sql_rel *rel)
        return rel;
 }
 
-static sql_rel *
-_rel_add_identity(mvc *sql, sql_rel *rel, sql_exp **exp)
-{
-       list *exps = rel_projections(sql, rel, NULL, 1, 1);
-       sql_exp *e;
-
-       if (list_length(exps) == 0) {
-               *exp = NULL;
-               return rel;
-       }
-       rel = rel_project(sql->sa, rel, rel_projections(sql, rel, NULL, 1, 1));
-       //e = rel_unop_(sql, rel->exps->h->data, NULL, "identity", card_value);
-       e = rel->exps->h->data;
-       e = exp_unop(sql->sa, e, sql_bind_func(sql->sa, NULL, "identity", 
exp_subtype(e), NULL, F_FUNC));
-       e->p = prop_create(sql->sa, PROP_HASHCOL, e->p);
-       *exp = exp_label(sql->sa, e, ++sql->label);
-       rel_project_add_exp(sql, rel, e);
-       return rel;
-}
-
-static sql_exp *
-exps_find_identity(list *exps) 
-{
-       node *n;
-
-       for (n=exps->h; n; n = n->next) {
-               sql_exp *e = n->data;
-
-               if (is_identity(e, NULL))
-                       return e;
-       }
-       return NULL;
-}
-
-static sql_rel *
-rel_add_identity(mvc *sql, sql_rel *rel, sql_exp **exp)
-{
-       if (rel && is_project(rel->op) && (*exp = 
exps_find_identity(rel->exps)) != NULL) 
-               return rel;
-       return _rel_add_identity(sql, rel, exp);
-}
-
 static int
 exps_from_rel( list *exps, sql_rel *rel )
 {
diff --git a/sql/server/rel_optimizer.h b/sql/server/rel_optimizer.h
--- a/sql/server/rel_optimizer.h
+++ b/sql/server/rel_optimizer.h
@@ -18,4 +18,6 @@ extern int exp_joins_rels(sql_exp *e, li
 
 extern void *name_find_column( sql_rel *rel, char *rname, char *name, int pnr, 
sql_rel **bt );
 
+extern sql_rel * rel_dce(mvc *sql, sql_rel *rel);
+
 #endif /*_REL_OPTIMIZER_H_*/
diff --git a/sql/server/rel_rel.c b/sql/server/rel_rel.c
--- a/sql/server/rel_rel.c
+++ b/sql/server/rel_rel.c
@@ -1077,3 +1077,43 @@ rel_ddl_table_get(sql_rel *r)
        return NULL;
 }
 
+static sql_exp *
+exps_find_identity(list *exps) 
+{
+       node *n;
+
+       for (n=exps->h; n; n = n->next) {
+               sql_exp *e = n->data;
+
+               if (is_identity(e, NULL))
+                       return e;
+       }
+       return NULL;
+}
+
+static sql_rel *
+_rel_add_identity(mvc *sql, sql_rel *rel, sql_exp **exp)
+{
+       list *exps = rel_projections(sql, rel, NULL, 1, 1);
+       sql_exp *e;
+
+       if (list_length(exps) == 0) {
+               *exp = NULL;
+               return rel;
+       }
+       rel = rel_project(sql->sa, rel, rel_projections(sql, rel, NULL, 1, 1));
+       e = rel->exps->h->data;
+       e = exp_unop(sql->sa, e, sql_bind_func(sql->sa, NULL, "identity", 
exp_subtype(e), NULL, F_FUNC));
+       e->p = prop_create(sql->sa, PROP_HASHCOL, e->p);
+       *exp = exp_label(sql->sa, e, ++sql->label);
+       rel_project_add_exp(sql, rel, e);
+       return rel;
+}
+
+sql_rel *
+rel_add_identity(mvc *sql, sql_rel *rel, sql_exp **exp)
+{
+       if (rel && is_project(rel->op) && (*exp = 
exps_find_identity(rel->exps)) != NULL) 
+               return rel;
+       return _rel_add_identity(sql, rel, exp);
+}
diff --git a/sql/server/rel_rel.h b/sql/server/rel_rel.h
--- a/sql/server/rel_rel.h
+++ b/sql/server/rel_rel.h
@@ -70,4 +70,5 @@ extern sql_rel *rel_or(mvc *sql, sql_rel
 
 extern sql_table *rel_ddl_table_get(sql_rel *r);
 
+extern sql_rel *rel_add_identity(mvc *sql, sql_rel *rel, sql_exp **exp);
 #endif /* _REL_REL_H_ */
_______________________________________________
checkin-list mailing list
[email protected]
https://www.monetdb.org/mailman/listinfo/checkin-list

Reply via email to