Changeset: 325f33aa6ef6 for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=325f33aa6ef6
Modified Files:
        sql/backends/monet5/rel_bin.c
        sql/server/rel_unnest.c
Branch: default
Log Message:

Merged with linear-hashing


diffs (49 lines):

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
@@ -5355,7 +5355,7 @@ rel2bin_partition_limits(backend *be, sq
                l = subrel_bin(be, rel->l, refs);
        if (rel->r)  /* first construct the sub relation */
                r = subrel_bin(be, rel->r, refs);
-       if (!l || !r)
+       if ((rel->l && !l) || (rel->r && !r))
                return NULL;
 
        assert(rel->exps);
@@ -5385,9 +5385,9 @@ rel2bin_exception(backend *be, sql_rel *
 
        if (rel->l)  /* first construct the sub relation */
                l = subrel_bin(be, rel->l, refs);
-    if (rel->r)  /* first construct the sub relation */
+       if (rel->r)  /* first construct the sub relation */
                r = subrel_bin(be, rel->r, refs);
-       if (!l || !r)
+       if ((rel->l && !l) || (rel->r && !r))
                return NULL;
 
        if (rel->exps) {
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
@@ -1382,7 +1382,10 @@ static sql_rel *
 
        switch (rel->op) {
        case op_basetable:
+               break;
        case op_table:
+               if (IS_TABLE_PROD_FUNC(rel->flag) || rel->flag == 
TABLE_FROM_RELATION)
+                       rel->l = _rel_unnest(sql, rel->l);
                break;
        case op_join: 
        case op_left: 
@@ -1432,7 +1435,10 @@ rel_reset_subquery(sql_rel *rel)
        rel->subquery = 0;
        switch(rel->op){
        case op_basetable:
+               break;
        case op_table:
+               if ((IS_TABLE_PROD_FUNC(rel->flag) || rel->flag == 
TABLE_FROM_RELATION) && rel->l)
+                       rel_reset_subquery(rel->l);
                break;
        case op_ddl:
                rel_reset_subquery(rel->l);
_______________________________________________
checkin-list mailing list
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list

Reply via email to