Changeset: 3b0a1788b82d for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB/rev/3b0a1788b82d
Branch: ppbench
Log Message:

merged with pp_hashjoin


diffs (67 lines):

diff --git a/monetdb5/mal/mal_function.c b/monetdb5/mal/mal_function.c
--- a/monetdb5/mal/mal_function.c
+++ b/monetdb5/mal/mal_function.c
@@ -530,9 +530,11 @@ setVariableScope(MalBlkPtr mb)
                                if (dflow != -1)
                                        addMalException(mb,
                                                                        
"setLifeSpan nested dataflow blocks not allowed");
-                               pp = pc;
                                dflow = depth;
-                               jump = p->jump;
+                               if (getFunctionId(p) == pipelinesRef) {
+                                       pp = pc;
+                                       jump = p->jump;
+                               }
                        } else
                                depth++;
                }
diff --git a/monetdb5/optimizer/opt_dataflow.c 
b/monetdb5/optimizer/opt_dataflow.c
--- a/monetdb5/optimizer/opt_dataflow.c
+++ b/monetdb5/optimizer/opt_dataflow.c
@@ -139,9 +139,9 @@ dataflowBreakpoint(Client ctx, MalBlkPtr
                 * explicitly mentioned as arguments (and certainly not as the
                 * first argument), but that can still be available to the MAL
                 * program (see bugs.monetdb.org/6641) */
-//             if (getModuleId(p) == sqlRef)
+               if (getModuleId(p) == sqlRef)
                        return 1;
-//             return getState(states, p, p->retc) & (VARREAD | VARBLOCK);
+               return getState(states, p, p->retc) & (VARREAD | VARBLOCK);
        }
 
        for (j = p->retc; j < p->argc; j++) {
diff --git a/sql/server/rel_optimize_proj.c b/sql/server/rel_optimize_proj.c
--- a/sql/server/rel_optimize_proj.c
+++ b/sql/server/rel_optimize_proj.c
@@ -3347,6 +3347,7 @@ rel_project_select_exp(visitor *v, sql_r
 static sql_rel *
 rel_optimize_projections_(visitor *v, sql_rel *rel)
 {
+       ATOMIC_TYPE oahash_enabled = (1U<<19);
        rel = rel_project_cse(v, rel);
        rel = rel_project_select_exp(v, rel);
        rel = rel_use_equality_exps(v, rel);
@@ -3361,11 +3362,11 @@ rel_optimize_projections_(visitor *v, sq
                rel = rel_simplify_groupby_columns(v, rel);
        }
        rel = rel_groupby_cse(v, rel);
-       if (0) rel = rel_push_aggr_down(v, rel);
+       if (!oahash_enabled) rel = rel_push_aggr_down(v, rel);
        rel = rel_push_groupby_down(v, rel);
        rel = rel_reduce_groupby_exps(v, rel);
        rel = rel_distinct_aggregate_on_unique_values(v, rel);
-       if (0) rel = rel_groupby_distinct(v, rel);
+       if (!oahash_enabled) rel = rel_groupby_distinct(v, rel);
        rel = rel_push_count_down(v, rel);
 
        /* only when value_based_opt is on, ie not for dependency resolution */
@@ -3522,7 +3523,8 @@ rel_merge_unions(visitor *v, sql_rel *re
 static inline sql_rel *
 rel_push_join_down_munion(visitor *v, sql_rel *rel)
 {
-       if (0 && ((is_join(rel->op) && !is_outerjoin(rel->op) && 
!is_single(rel)) || is_semi(rel->op))) {
+       ATOMIC_TYPE oahash_enabled = (1U<<19);
+       if (!oahash_enabled && ((is_join(rel->op) && !is_outerjoin(rel->op) && 
!is_single(rel)) || is_semi(rel->op))) {
                sql_rel *l = rel->l, *r = rel->r, *ol = l, *or = r;
                list *exps = rel->exps, *attr = rel->attr;
                sql_exp *je = NULL;
_______________________________________________
checkin-list mailing list -- [email protected]
To unsubscribe send an email to [email protected]

Reply via email to