Changeset: 73ea7e3782f2 for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB/rev/73ea7e3782f2
Modified Files:
        sql/server/rel_optimizer.c
        sql/server/rel_propagate.c
        sql/server/rel_rel.c
Branch: default
Log Message:

Set more relations as processed


diffs (73 lines):

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
@@ -4016,6 +4016,7 @@ rel_push_aggr_down(visitor *v, sql_rel *
                ul->card = g->card;
                ul->exps = exps_copy(v->sql, g->exps);
                ul->nrcols = list_length(ul->exps);
+               set_processed(ul);
 
                ur = rel_groupby(v->sql, ur, NULL);
                ur->r = rgbe;
@@ -4023,6 +4024,7 @@ rel_push_aggr_down(visitor *v, sql_rel *
                ur->card = g->card;
                ur->exps = exps_copy(v->sql, g->exps);
                ur->nrcols = list_length(ur->exps);
+               set_processed(ur);
 
                /* group by on primary keys which define the partioning scheme
                 * don't need a finalizing group by */
@@ -9849,6 +9851,7 @@ rel_setjoins_2_joingroupby(visitor *v, s
                        } else {
                                rel = rel_groupby(v->sql, rel, 
list_append(sa_list(v->sql->sa), exp_ref(v->sql, lid)));
                                rel->exps = aexps;
+                               set_processed(rel);
                        }
                }
        }
diff --git a/sql/server/rel_propagate.c b/sql/server/rel_propagate.c
--- a/sql/server/rel_propagate.c
+++ b/sql/server/rel_propagate.c
@@ -217,6 +217,7 @@ create_range_partition_anti_rel(sql_quer
        anti_rel = rel_groupby(sql, anti_rel, NULL);
        aggr = exp_aggr(sql->sa, NULL, cf, 0, 0, anti_rel->card, 0);
        (void) rel_groupby_add_aggr(sql, anti_rel, aggr);
+       set_processed(anti_rel);
        exp_label(sql->sa, aggr, ++sql->label);
 
        /* generate the exception */
@@ -259,6 +260,7 @@ create_list_partition_anti_rel(sql_query
        anti_rel = rel_groupby(sql, anti_rel, NULL);
        aggr = exp_aggr(sql->sa, NULL, cf, 0, 0, anti_rel->card, 0);
        (void) rel_groupby_add_aggr(sql, anti_rel, aggr);
+       set_processed(anti_rel);
        exp_label(sql->sa, aggr, ++sql->label);
 
        /* generate the exception */
@@ -866,6 +868,7 @@ rel_generate_subinserts(sql_query *query
                anti_rel = rel_groupby(sql, anti_rel, NULL);
                aggr = exp_aggr(sql->sa, NULL, cf, 0, 0, anti_rel->card, 0);
                (void) rel_groupby_add_aggr(sql, anti_rel, aggr);
+               set_processed(anti_rel);
                exp_label(sql->sa, aggr, ++sql->label);
 
                aggr = exp_ref(sql, aggr);
@@ -1041,6 +1044,7 @@ rel_subtable_insert(sql_query *query, sq
                aggr = exp_aggr(sql->sa, NULL, cf, 0, 0, anti_dup->card, 0);
                (void) rel_groupby_add_aggr(sql, anti_dup, aggr);
                exp_label(sql->sa, aggr, ++sql->label);
+               set_processed(anti_dup);
 
                /* generate the exception */
                aggr = exp_ref(sql, aggr);
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
@@ -1664,6 +1664,7 @@ rel_return_zero_or_one(mvc *sql, sql_rel
                        e = exp_aggr1(sql->sa, e, zero_or_one, 0, 0, CARD_ATOM, 
has_nil(e));
                        (void)rel_groupby_add_aggr(sql, rel, e);
                }
+               set_processed(rel);
        }
        return rel;
 }
_______________________________________________
checkin-list mailing list -- checkin-list@monetdb.org
To unsubscribe send an email to checkin-list-le...@monetdb.org

Reply via email to