Changeset: 46200f303dfb for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=46200f303dfb
Modified Files:
        sql/backends/monet5/rel_bin.c
Branch: acticloud
Log Message:

Code cleanup.


diffs (191 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
@@ -1312,7 +1312,7 @@ rel2bin_basetable(backend *be, sql_rel *
 
        if (!t && c)
                t = c->t;
-               dels = stmt_tid(be, t, rel->flag == REL_PARTITION);
+       dels = stmt_tid(be, t, rel->flag == REL_PARTITION);
 
        /* add aliases */
        assert(rel->exps);
@@ -1328,7 +1328,7 @@ rel2bin_basetable(backend *be, sql_rel *
                        const char *cname = cexp->r;
                        list *l = sa_list(sql->sa);
 
-                       c = find_sql_column(t, cname);
+                       c = find_sql_column(t, cname);
                        s = stmt_col(be, c, dels);
                        append(l, s);
                        if (exps->h->next) {
@@ -1346,7 +1346,7 @@ rel2bin_basetable(backend *be, sql_rel *
 
                        s = dels?dels:stmt_tid(be, t, 0);
                        s = stmt_alias(be, s, rnme, TID);
-               } else if (oname[0] == '%') { 
+               } else if (oname[0] == '%') {
                        sql_idx *i = find_sql_idx(t, oname+1);
 
                        /* do not include empty indices in the plan */
@@ -1418,7 +1418,7 @@ exp2bin_args(backend *be, sql_exp *e, li
                } else if (e->r) {
                        char nme[64];
 
-                       snprintf(nme, 64, "A%s", (char*)e->r);
+                       snprintf(nme, sizeof(nme), "A%s", (char*)e->r);
                        if (!list_find(args, nme, (fcmp)&alias_cmp)) {
                                stmt *s = stmt_var(be, e->r, &e->tpe, 0, 0);
 
@@ -1428,7 +1428,7 @@ exp2bin_args(backend *be, sql_exp *e, li
                } else {
                        char nme[16];
 
-                       snprintf(nme, 16, "A%d", e->flag);
+                       snprintf(nme, sizeof(nme), "A%d", e->flag);
                        if (!list_find(args, nme, (fcmp)&alias_cmp)) {
                                atom *a = sql->args[e->flag];
                                stmt *s = stmt_varnr(be, e->flag, &a->tpe);
@@ -1520,7 +1520,7 @@ static stmt *
 rel2bin_table(backend *be, sql_rel *rel, list *refs)
 {
        mvc *sql = be->mvc;
-       list *l; 
+       list *l;
        stmt *sub = NULL, *osub = NULL;
        node *en, *n;
        sql_exp *op = rel->r;
@@ -1550,7 +1550,7 @@ rel2bin_table(backend *be, sql_rel *rel,
                int i;
                sql_subfunc *f = op->f;
                stmt *psub = NULL;
-                       
+
                if (rel->l) { /* first construct the sub relation */
                        sql_rel *l = rel->l;
                        if (l->op == op_ddl) {
@@ -1561,14 +1561,14 @@ rel2bin_table(backend *be, sql_rel *rel,
                        } else {
                                sub = subrel_bin(be, rel->l, refs);
                        }
-                       if (!sub) 
+                       if (!sub)
                                return NULL;
                }
 
                psub = exp_bin(be, op, sub, NULL, NULL, NULL, NULL, NULL); /* 
table function */
-               if (!f || !psub) { 
+               if (!f || !psub) {
                        assert(0);
-                       return NULL;    
+                       return NULL;
                }
                l = sa_list(sql->sa);
                if (f->func->res) {
@@ -1577,32 +1577,32 @@ rel2bin_table(backend *be, sql_rel *rel,
                                                sql_exp *exp = en->data;
                                                sql_subtype *st = n->data;
                                                const char *rnme = 
exp->rname?exp->rname:exp->l;
-                                               stmt *s = stmt_rs_column(be, 
psub, i, st); 
-                               
+                                               stmt *s = stmt_rs_column(be, 
psub, i, st);
+
                                                s = stmt_alias(be, s, rnme, 
exp->name);
                                                list_append(l, s);
                                        }
                                } else {
                                        for(i = 0, n = f->func->res->h; n; n = 
n->next, i++ ) {
                                                sql_arg *a = n->data;
-                                               stmt *s = stmt_rs_column(be, 
psub, i, &a->type); 
+                                               stmt *s = stmt_rs_column(be, 
psub, i, &a->type);
                                                const char *rnme = 
exp_find_rel_name(op);
-                       
+
                                                s = stmt_alias(be, s, rnme, 
a->name);
                                                list_append(l, s);
                                        }
                                        if (list_length(f->res) == 
list_length(f->func->res) + 1) {
                                                /* add missing %TID% column */
                                                sql_subtype *t = 
f->res->t->data;
-                                               stmt *s = stmt_rs_column(be, 
psub, i, t); 
+                                               stmt *s = stmt_rs_column(be, 
psub, i, t);
                                                const char *rnme = 
exp_find_rel_name(op);
-                       
+
                                                s = stmt_alias(be, s, rnme, 
TID);
                                                list_append(l, s);
                                        }
                                }
                }
-               if (!rel->flag && sub && sub->nrcols) { 
+               if (!rel->flag && sub && sub->nrcols) {
                        assert(0);
                        list_merge(l, sub->op4.lval, NULL);
                        osub = sub;
@@ -1624,7 +1624,7 @@ rel2bin_table(backend *be, sql_rel *rel,
                l = sa_list(sql->sa);
                for(i = 0, n = rel->exps->h; n; n = n->next, i++ ) {
                        sql_exp *c = n->data;
-                       stmt *s = stmt_rs_column(be, sub, i, exp_subtype(c)); 
+                       stmt *s = stmt_rs_column(be, sub, i, exp_subtype(c));
                        const char *nme = exp_name(c);
                        const char *rnme = NULL;
 
@@ -1635,9 +1635,9 @@ rel2bin_table(backend *be, sql_rel *rel,
                }
                sub = stmt_list(be, l);
        }
-       if (!sub) { 
+       if (!sub) {
                assert(0);
-               return NULL;    
+               return NULL;
        }
        l = sa_list(sql->sa);
        for( en = rel->exps->h; en; en = en->next ) {
@@ -1659,7 +1659,7 @@ rel2bin_table(backend *be, sql_rel *rel,
                s = stmt_alias(be, s, rnme, exp->name);
                list_append(l, s);
        }
-       if (osub && osub->nrcols) 
+       if (osub && osub->nrcols)
                list_merge(l, osub->op4.lval, NULL);
        sub = stmt_list(be, l);
        return sub;
@@ -3527,11 +3527,18 @@ rel2bin_insert(backend *be, sql_rel *rel
                t = rel_ddl_table_get(tr);
        }
 
-       if (rel->r) /* first construct the inserts relation */
+       if (rel->r) { /* first construct the inserts relation */
                inserts = subrel_bin(be, rel->r, refs);
+               if (isRemote(t)) {
+                       list *ll = rel2bin_args(be, rel->r, sa_list(sql->sa));
+                       if (!ll)
+                               return NULL;
+                       inserts = stmt_list(be, ll);
+               }
+       }
 
        if (!inserts)
-               return NULL;    
+               return NULL;
 
        if (idx_ins)
                pin = refs_find_rel(refs, prel);
@@ -3578,14 +3585,8 @@ rel2bin_insert(backend *be, sql_rel *rel
        }
 
        if (isRemote(t)) {
-               stmt *sub;
                char name[16], *nme = number2name(name, sizeof(name), 
++sql->remote);
-               list *ll = rel2bin_args(be, rel->r, sa_list(sql->sa));
-
-               if (!ll)
-                       return NULL;
-               sub = stmt_list(be, ll);
-               insert = stmt_func(be, sub, sa_strdup(sql->sa, nme), rel, 0);
+               insert = stmt_func(be, inserts, sa_strdup(sql->sa, nme), rel, 
0);
        } else {
                for (n = t->columns.set->h, m = inserts->op4.lval->h; n && m; n 
= n->next, m = m->next) {
                        stmt *ins = m->data;
_______________________________________________
checkin-list mailing list
[email protected]
https://www.monetdb.org/mailman/listinfo/checkin-list

Reply via email to