Changeset: e4c805b2af3d for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB/rev/e4c805b2af3d
Modified Files:
sql/server/rel_unnest.c
sql/server/rel_updates.c
Branch: default
Log Message:
Merged with Jan2022
diffs (32 lines):
diff --git a/sql/server/rel_unnest.c b/sql/server/rel_unnest.c
--- a/sql/server/rel_unnest.c
+++ b/sql/server/rel_unnest.c
@@ -2192,8 +2192,15 @@ aggrs_split_funcs(mvc *sql, sql_rel *rel
}
if (!list_empty(projs)) {
/* the grouping relation may have more than 1
reference, a replacement is needed */
- list *nexps = list_merge(rel_projections(sql, rel,
NULL, 1, 1), projs, NULL);
- rel = rel_inplace_project(sql->sa, rel,
rel_dup(rel->l), nexps);
+ sql_rel *l = rel_create(sql->sa);
+ if (!l)
+ return NULL;
+ *l = *rel;
+ /* increment the refcount of the left relation */
+ rel_dup(rel->l);
+ l->ref.refcnt = 1;
+ list *nexps = list_merge(rel_projections(sql, l, NULL,
1, 1), projs, NULL);
+ rel = rel_inplace_project(sql->sa, rel, l, nexps);
rel->card = exps_card(nexps);
}
}
diff --git a/sql/server/rel_updates.c b/sql/server/rel_updates.c
--- a/sql/server/rel_updates.c
+++ b/sql/server/rel_updates.c
@@ -405,6 +405,7 @@ rel_inserts(mvc *sql, sql_table *t, sql_
if (c) {
c = rel_setop(sql->sa, c, p, op_union);
rel_setop_set_exps(sql, c, rel_projections(sql,
c->l, NULL, 1, 1), false);
+ set_processed(c);
} else
c = p;
}
_______________________________________________
checkin-list mailing list -- [email protected]
To unsubscribe send an email to [email protected]