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]