Changeset: ec6f51508e0e for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB/rev/ec6f51508e0e
Modified Files:
        clients/Tests/exports.stable.out
        gdk/gdk.h
        monetdb5/mal/mal_client.c
        monetdb5/mal/mal_client.h
        sql/backends/monet5/rel_bin.c
        sql/backends/monet5/rel_physical.c
        sql/backends/monet5/sql_optimizer.c
        sql/server/rel_optimize_proj.c
        sql/server/rel_optimize_sel.c
        sql/server/rel_statistics.c
        tools/mserver/mserver5.c
Branch: default
Log Message:

Renamed oahash_enabled to pipeline_mode (also for default_oahash_enabled).


diffs (255 lines):

diff --git a/clients/Tests/exports.stable.out b/clients/Tests/exports.stable.out
--- a/clients/Tests/exports.stable.out
+++ b/clients/Tests/exports.stable.out
@@ -917,7 +917,7 @@ const char dblRef[];
 void debugFunction(stream *fd, MalBlkPtr mb, MalStkPtr stk, int flg, int 
first, int size);
 const char decompressRef[];
 int defConstant(MalBlkPtr mb, int type, ValPtr cst);
-bool default_oahash_enabled;
+bool default_pipeline_mode;
 const char defaultpipeRef[];
 const char defineRef[];
 void delArgument(InstrPtr p, int varid);
diff --git a/gdk/gdk.h b/gdk/gdk.h
--- a/gdk/gdk.h
+++ b/gdk/gdk.h
@@ -458,7 +458,7 @@ typedef struct QryCtx {
        ATOMIC_TYPE datasize;
        ATOMIC_BASE_TYPE maxmem;
        allocator *errorallocator;
-       bool oahash_enabled;
+       bool pipeline_mode;
 } QryCtx;
 
 gdk_export bool THRhighwater(void);
diff --git a/monetdb5/mal/mal_client.c b/monetdb5/mal/mal_client.c
--- a/monetdb5/mal/mal_client.c
+++ b/monetdb5/mal/mal_client.c
@@ -54,7 +54,7 @@
 
 int MAL_MAXCLIENTS = 0;
 ClientRec *mal_clients = NULL;
-bool default_oahash_enabled = false;
+bool default_pipeline_mode = false;
 
 void
 mal_client_reset(void)
@@ -257,7 +257,7 @@ MCinitClientRecord(Client c, oid user, b
        ATOMIC_SET(&c->qryctx.datasize, 0);
        c->qryctx.maxmem = 0;
        c->maxmem = 0;
-       c->qryctx.oahash_enabled = default_oahash_enabled;
+       c->qryctx.pipeline_mode = default_pipeline_mode;
 
        c->prompt = PROMPT1;
        c->promptlength = strlen(c->prompt);
diff --git a/monetdb5/mal/mal_client.h b/monetdb5/mal/mal_client.h
--- a/monetdb5/mal/mal_client.h
+++ b/monetdb5/mal/mal_client.h
@@ -185,7 +185,7 @@ typedef struct CLIENT {
 
 mal_export int MAL_MAXCLIENTS;
 mal_export ClientRec *mal_clients;
-mal_export bool default_oahash_enabled;
+mal_export bool default_pipeline_mode;
 
 mal_export Client MCgetClient(int id);
 mal_export Client MCinitClient(oid user, bstream *fin, stream *fout);
diff --git a/sql/backends/monet5/rel_bin.c b/sql/backends/monet5/rel_bin.c
--- a/sql/backends/monet5/rel_bin.c
+++ b/sql/backends/monet5/rel_bin.c
@@ -1834,7 +1834,7 @@ exp_bin(backend *be, sql_exp *e, stmt *l
                                list_append(l, es);
                        }
                }
-               if (SQLrunning && be->client->qryctx.oahash_enabled && 
f->pipeline && f->func->mod && f->func->imp && strcmp(f->func->mod, 
"generator") == 0 && strcmp(f->func->imp, "series") == 0)
+               if (SQLrunning && be->client->qryctx.pipeline_mode && 
f->pipeline && f->func->mod && f->func->imp && strcmp(f->func->mod, 
"generator") == 0 && strcmp(f->func->imp, "series") == 0)
                        return exp2bin_generator(be, e, l);
                if (!(s = stmt_Nop(be, stmt_list(be, l), sel, f, rows)))
                        return NULL;
diff --git a/sql/backends/monet5/rel_physical.c 
b/sql/backends/monet5/rel_physical.c
--- a/sql/backends/monet5/rel_physical.c
+++ b/sql/backends/monet5/rel_physical.c
@@ -426,7 +426,7 @@ rel_groupby_partition_safe(sql_rel *rel)
 static int
 do_oahash_join(visitor *v, sql_rel *rel, int *side)
 {
-       if (!MT_thread_get_qry_ctx()->oahash_enabled)
+       if (!MT_thread_get_qry_ctx()->pipeline_mode)
                return 0;
 
        /* fetch join */
@@ -1645,7 +1645,7 @@ rel_rewrite_physical(visitor *v, sql_rel
        if (rel)
                rel = rel_push_down_topn(v, rel);
        if (rel) { /* split equi-join/select */
-               if (SQLrunning && MT_thread_get_qry_ctx()->oahash_enabled) {
+               if (SQLrunning && MT_thread_get_qry_ctx()->pipeline_mode) {
                        rel = rel_count_gt_zero(v, rel);
                        if (rel)        /* Add a projection after each join, 
needed for limited number of columns in hash tables */
                                rel = rel_add_project(v, rel);
@@ -1673,7 +1673,7 @@ rel_physical(mvc *sql, sql_rel *rel)
        v.data = NULL;
 
        if (!sql->recursive) {
-               if (!SQLrunning || !MT_thread_get_qry_ctx()->oahash_enabled || 
gp.complex_modify || gp.cnt[op_except] || gp.cnt[op_inter]) {
+               if (!SQLrunning || !MT_thread_get_qry_ctx()->pipeline_mode || 
gp.complex_modify || gp.cnt[op_except] || gp.cnt[op_inter]) {
                        if (v.opt >= 0)
                                v.opt = rel->opt+1;
                        (void)rel_partition(&v, sql, rel);
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
@@ -136,7 +136,7 @@ addOptimizers(Client c, MalBlkPtr mb, co
 
        be = (backend *) c->sqlcontext;
        c->no_mitosis = be->no_mitosis;
-       if (c->qryctx.oahash_enabled)
+       if (c->qryctx.pipeline_mode)
                c->no_mitosis = 1;
        assert(be && be->mvc);  /* SQL clients should always have their state 
set */
 
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
@@ -3360,7 +3360,7 @@ rel_project_select_exp(visitor *v, sql_r
 static sql_rel *
 rel_optimize_projections_(visitor *v, sql_rel *rel)
 {
-       bool oahash_enabled = MT_thread_get_qry_ctx()->oahash_enabled;
+       bool pipeline_mode = MT_thread_get_qry_ctx()->pipeline_mode;
        rel = rel_project_cse(v, rel);
        rel = rel_project_select_exp(v, rel);
        rel = rel_use_equality_exps(v, rel);
@@ -3375,11 +3375,11 @@ rel_optimize_projections_(visitor *v, sq
                rel = rel_simplify_groupby_columns(v, rel);
        }
        rel = rel_groupby_cse(v, rel);
-       if (!oahash_enabled) rel = rel_push_aggr_down(v, rel);
+       if (!pipeline_mode) 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 (!oahash_enabled) rel = rel_groupby_distinct(v, rel);
+       if (!pipeline_mode) 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 */
@@ -3536,8 +3536,8 @@ rel_merge_unions(visitor *v, sql_rel *re
 static inline sql_rel *
 rel_push_join_down_munion(visitor *v, sql_rel *rel)
 {
-       bool oahash_enabled = MT_thread_get_qry_ctx()->oahash_enabled;
-       if (!oahash_enabled && ((is_join(rel->op) && !is_outerjoin(rel->op) && 
!is_single(rel)) || is_semi(rel->op))) {
+       bool pipeline_mode = MT_thread_get_qry_ctx()->pipeline_mode;
+       if (!pipeline_mode && ((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;
diff --git a/sql/server/rel_optimize_sel.c b/sql/server/rel_optimize_sel.c
--- a/sql/server/rel_optimize_sel.c
+++ b/sql/server/rel_optimize_sel.c
@@ -1768,8 +1768,8 @@ rel_join_use_fk(visitor *v, sql_rel *rel
 static sql_rel *
 rel_optimize_joins_topdown_(visitor *v, sql_rel *rel)
 {
-       bool oahash_enabled = MT_thread_get_qry_ctx()->oahash_enabled;
-       if (oahash_enabled)
+       bool pipeline_mode = MT_thread_get_qry_ctx()->pipeline_mode;
+       if (pipeline_mode)
                rel = transitivity_rule(v, rel);
        rel = rel_join_use_fk(v, rel);
        return rel;
@@ -3571,7 +3571,7 @@ order_joins_bushy2( visitor *v, list *re
 static sql_rel *
 order_joins(visitor *v, list *rels, list *exps)
 {
-       bool oahash_enabled = MT_thread_get_qry_ctx()->oahash_enabled;
+       bool pipeline_mode = MT_thread_get_qry_ctx()->pipeline_mode;
        sql_rel *top = NULL, *l = NULL, *r = NULL, *f = NULL;
        sql_exp *cje;
        node *djn;
@@ -3678,7 +3678,7 @@ order_joins(visitor *v, list *rels, list
                rsingle = is_single(r);
                reset_single(r);
                top = rel_crossproduct(v->sql->sa, l, r, op_join);
-               if (oahash_enabled)
+               if (pipeline_mode)
                        top = rel_get_statistics_(v, top); /* we need stats */
                if (rsingle)
                        set_single(r);
@@ -3939,7 +3939,7 @@ static sql_rel *rel_join_order_(visitor 
 sql_rel *
 reorder_join(visitor *v, sql_rel *rel)
 {
-       bool oahash_enabled = MT_thread_get_qry_ctx()->oahash_enabled;
+       bool pipeline_mode = MT_thread_get_qry_ctx()->pipeline_mode;
 
        list *exps, *rels;
        allocator *ta = MT_thread_getallocator();
@@ -3966,7 +3966,7 @@ reorder_join(visitor *v, sql_rel *rel)
                        int cnt = list_length(exps);
                        rel->exps = exps;
                        if (list_length(rel->exps) != cnt) {
-                               if (oahash_enabled)
+                               if (pipeline_mode)
                                        rel->exps = 
order_join_expressions_pp(v->sql, exps, rels);
                                else
                                        rel->exps = 
order_join_expressions(v->sql, exps, rels);
@@ -3981,7 +3981,7 @@ reorder_join(visitor *v, sql_rel *rel)
                get_relations(v, rel, rels);
                if (list_length(rels) > 1) {
                        rels = push_in_join_down(v->sql, rels, exps);
-                       if (oahash_enabled)
+                       if (pipeline_mode)
                                rel = order_joins_bushy2(v, rels, exps);
                        else
                                rel = order_joins(v, rels, exps);
@@ -4076,9 +4076,9 @@ rel_join_order(visitor *v, global_props 
 run_optimizer
 bind_join_order(visitor *v, global_props *gp)
 {
-       bool oahash_enabled = MT_thread_get_qry_ctx()->oahash_enabled;
+       bool pipeline_mode = MT_thread_get_qry_ctx()->pipeline_mode;
        int flag = v->sql->sql_optimizer;
-       return !oahash_enabled && gp->opt_level == 1 && gp->opt_cycle < 10 && 
!gp->cnt[op_update] && (gp->cnt[op_join] || gp->cnt[op_left] ||
+       return !pipeline_mode && gp->opt_level == 1 && gp->opt_cycle < 10 && 
!gp->cnt[op_update] && (gp->cnt[op_join] || gp->cnt[op_left] ||
                gp->cnt[op_right] || gp->cnt[op_full]) && (flag & join_order) ? 
rel_join_order : NULL;
 }
 
diff --git a/sql/server/rel_statistics.c b/sql/server/rel_statistics.c
--- a/sql/server/rel_statistics.c
+++ b/sql/server/rel_statistics.c
@@ -1297,9 +1297,9 @@ rel_get_statistics(visitor *v, global_pr
 run_optimizer
 bind_get_statistics(visitor *v, global_props *gp)
 {
-       bool oahash_enabled = MT_thread_get_qry_ctx()->oahash_enabled;
+       bool pipeline_mode = MT_thread_get_qry_ctx()->pipeline_mode;
        (void) v;
-       return (!oahash_enabled && gp->opt_level == 1 /*&& 
!gp->cnt[op_insert]*/) ? rel_get_statistics : NULL;
+       return (!pipeline_mode && gp->opt_level == 1 /*&& 
!gp->cnt[op_insert]*/) ? rel_get_statistics : NULL;
 }
 
 
diff --git a/tools/mserver/mserver5.c b/tools/mserver/mserver5.c
--- a/tools/mserver/mserver5.c
+++ b/tools/mserver/mserver5.c
@@ -537,7 +537,7 @@ main(int argc, char **av)
                        }
                        /* debugging options */
                        if (strcmp(long_options[option_index].name, "pipeline") 
== 0) {
-                               default_oahash_enabled = true;
+                               default_pipeline_mode = true;
                                break;
                        }
                        if (strcmp(long_options[option_index].name, 
"algorithms") == 0) {
@@ -684,7 +684,7 @@ main(int argc, char **av)
 
        if (debug & (1U << 19)) {
                debug &= ~(1U << 19);
-               default_oahash_enabled = true;
+               default_pipeline_mode = true;
        }
 
        if (debug)
_______________________________________________
checkin-list mailing list -- [email protected]
To unsubscribe send an email to [email protected]

Reply via email to