Changeset: 7e095ca4ac61 for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=7e095ca4ac61
Modified Files:
        sql/server/rel_dump.c
Branch: Apr2019
Log Message:

Backported rel_read features added in acticloud branch.


diffs (truncated from 973 to 300 lines):

diff --git a/sql/server/rel_dump.c b/sql/server/rel_dump.c
--- a/sql/server/rel_dump.c
+++ b/sql/server/rel_dump.c
@@ -14,6 +14,7 @@
 #include "rel_rel.h"
 #include "rel_exp.h"
 #include "rel_prop.h"
+#include "rel_updates.h"
 #include "rel_remote.h"
 #include "mal_errors.h"                /* for SQLSTATE() */
 
@@ -32,7 +33,7 @@ print_indent(mvc *sql, stream *fout, int
        if (depth > LINESIZE)
                depth = LINESIZE;
        for (i = 0; i < depth; i++){
-               if ((i % TABSTOP) == 0) 
+               if ((i % TABSTOP) == 0)
                        buf[i] = '|';
                else
                        buf[i] = ' ';
@@ -42,7 +43,7 @@ print_indent(mvc *sql, stream *fout, int
 }
 
 static void
-cmp_print(mvc *sql, stream *fout, int cmp) 
+cmp_print(mvc *sql, stream *fout, int cmp)
 {
        char *r;
 
@@ -68,7 +69,7 @@ cmp_print(mvc *sql, stream *fout, int cm
 static void exps_print(mvc *sql, stream *fout, list *exps, int depth, list 
*refs, int alias, int brackets);
 
 static void
-exp_print(mvc *sql, stream *fout, sql_exp *e, int depth, list *refs, int 
comma, int alias) 
+exp_print(mvc *sql, stream *fout, sql_exp *e, int depth, list *refs, int 
comma, int alias)
 {
        (void)sql;
        if (!e)
@@ -115,7 +116,7 @@ exp_print(mvc *sql, stream *fout, sql_ex
                        atom *a = e->l;
                        if (atom_type(a)->type->localtype == TYPE_ptr) {
                                sql_table *t = a->data.val.pval;
-                               mnstr_printf(fout, "%s(%s)", 
+                               mnstr_printf(fout, "%s(%s)",
                                        isStream(t)?"stream":
                                        isMergeTable(t)?"merge table":
                                        isReplicaTable(t)?"replica 
table":"table",
@@ -148,8 +149,8 @@ exp_print(mvc *sql, stream *fout, sql_ex
        }       break;
        case e_func: {
                sql_subfunc *f = e->f;
-               mnstr_printf(fout, "%s.%s", 
-                               f->func->s?f->func->s->base.name:"sys", 
+               mnstr_printf(fout, "%s.%s",
+                               f->func->s?f->func->s->base.name:"sys",
                                f->func->base.name);
                exps_print(sql, fout, e->l, depth, refs, alias, 1);
                if (e->r)
@@ -157,8 +158,8 @@ exp_print(mvc *sql, stream *fout, sql_ex
        }       break;
        case e_aggr: {
                sql_subaggr *a = e->f;
-               mnstr_printf(fout, "%s.%s", 
-                               a->aggr->s?a->aggr->s->base.name:"sys", 
+               mnstr_printf(fout, "%s.%s",
+                               a->aggr->s?a->aggr->s->base.name:"sys",
                                a->aggr->base.name);
                if (need_distinct(e))
                        mnstr_printf(fout, " unique ");
@@ -171,18 +172,18 @@ exp_print(mvc *sql, stream *fout, sql_ex
                else
                        mnstr_printf(fout, "()");
        }       break;
-       case e_column: 
+       case e_column:
                if (e->l)
                        mnstr_printf(fout, "\"%s\".", (char*)e->l);
                mnstr_printf(fout, "\"%s\"", (char*)e->r);
                if (e->rname && e->name && e->l && e->r &&
                        strcmp(e->rname, e->l) == 0 &&
-                       strcmp(e->name, e->r) == 0) 
+                       strcmp(e->name, e->r) == 0)
                        alias = 0;
                if (!e->rname && e->name && strcmp(e->name, e->r)==0)
                        alias = 0;
                break;
-       case e_cmp: 
+       case e_cmp:
                if (e->flag == cmp_in || e->flag == cmp_notin) {
                        exp_print(sql, fout, e->l, depth, refs, 0, alias);
                        cmp_print(sql, fout, get_cmp(e));
@@ -248,7 +249,7 @@ exp_print(mvc *sql, stream *fout, sql_ex
 }
 
 static void
-exps_print(mvc *sql, stream *fout, list *exps, int depth, list *refs, int 
alias, int brackets) 
+exps_print(mvc *sql, stream *fout, list *exps, int depth, list *refs, int 
alias, int brackets)
 {
        node *en;
 
@@ -257,7 +258,7 @@ exps_print(mvc *sql, stream *fout, list 
        else
                mnstr_printf(fout, " [ ");
        if (exps)
-               for (en = exps->h; en; en = en->next) 
+               for (en = exps->h; en; en = en->next)
                        exp_print(sql, fout, en->data, depth+1, refs, 
(en->next!=NULL), alias);
        if (brackets)
                mnstr_printf(fout, ")");
@@ -266,7 +267,7 @@ exps_print(mvc *sql, stream *fout, list 
 }
 
 const char *
-op2string(operator_type op) 
+op2string(operator_type op)
 {
        switch (op) {
        case op_basetable:
@@ -277,31 +278,31 @@ op2string(operator_type op)
                return "ddl";
        case op_project:
                return "project";
-       case op_select: 
+       case op_select:
                return "select";
-       case op_apply: 
+       case op_apply:
                return "apply";
-       case op_join: 
-       case op_left: 
-       case op_right: 
-       case op_full: 
+       case op_join:
+       case op_left:
+       case op_right:
+       case op_full:
                return "join";
-       case op_semi: 
+       case op_semi:
                return "semi";
-       case op_anti: 
+       case op_anti:
                return "anti";
-       case op_union: 
-       case op_inter: 
-       case op_except: 
+       case op_union:
+       case op_inter:
+       case op_except:
                return "set op";
-       case op_groupby: 
+       case op_groupby:
                return "group by";
-       case op_topn: 
+       case op_topn:
                return "topn";
        case op_sample:
                return "sample";
-       case op_insert: 
-       case op_update: 
+       case op_insert:
+       case op_update:
        case op_delete:
        case op_truncate:
                return "modify op";
@@ -310,7 +311,7 @@ op2string(operator_type op)
        }
 }
 
-static int 
+static int
 find_ref( list *refs, sql_rel *rel )
 {
        node *n;
@@ -324,8 +325,8 @@ find_ref( list *refs, sql_rel *rel )
 }
 
 void
-rel_print_(mvc *sql, stream  *fout, sql_rel *rel, int depth, list *refs, int 
decorate) 
-{ 
+rel_print_(mvc *sql, stream  *fout, sql_rel *rel, int depth, list *refs, int 
decorate)
+{
        char *r = NULL;
 
        if (!rel)
@@ -357,19 +358,19 @@ rel_print_(mvc *sql, stream  *fout, sql_
                                tname = mapiuri_table( uri, sql->sa, tname);
                        }
                        if (sname)
-                               mnstr_printf(fout, "%s(%s.%s)", 
+                               mnstr_printf(fout, "%s(%s.%s)",
                                        isStream(t)?"stream":
                                        isRemote(t)&&decorate?"REMOTE":
                                        isReplicaTable(t)?"REPLICA":"table",
                                        sname, tname);
                        else
-                               mnstr_printf(fout, "%s(%s)", 
+                               mnstr_printf(fout, "%s(%s)",
                                        isStream(t)?"stream":
                                        isRemote(t)&&decorate?"REMOTE":
                                        isReplicaTable(t)?"REPLICA":"table",
                                        tname);
-               }       
-               if (rel->exps) 
+               }
+               if (rel->exps)
                        exps_print(sql, fout, rel->exps, depth, refs, 1, 0);
        }       break;
        case op_table:
@@ -380,7 +381,7 @@ rel_print_(mvc *sql, stream  *fout, sql_
                        exp_print(sql, fout, rel->r, depth, refs, 1, 0);
                if (rel->l)
                        rel_print_(sql, fout, rel->l, depth+1, refs, decorate);
-               if (rel->exps) 
+               if (rel->exps)
                        exps_print(sql, fout, rel->exps, depth, refs, 1, 0);
                break;
        case op_ddl:
@@ -393,16 +394,16 @@ rel_print_(mvc *sql, stream  *fout, sql_
                if (rel->exps && (rel->flag == DDL_PSM || rel->flag == 
DDL_EXCEPTION || rel->flag == DDL_LIST))
                        exps_print(sql, fout, rel->exps, depth, refs, 1, 0);
                break;
-       case op_join: 
-       case op_left: 
-       case op_right: 
-       case op_full: 
-       case op_apply: 
-       case op_semi: 
-       case op_anti: 
-       case op_union: 
-       case op_inter: 
-       case op_except: 
+       case op_join:
+       case op_left:
+       case op_right:
+       case op_full:
+       case op_apply:
+       case op_semi:
+       case op_anti:
+       case op_union:
+       case op_inter:
+       case op_except:
                r = "join";
                if (rel->op == op_left)
                        r = "left outer join";
@@ -455,10 +456,10 @@ rel_print_(mvc *sql, stream  *fout, sql_
                exps_print(sql, fout, rel->exps, depth, refs, 1, 0);
                break;
        case op_project:
-       case op_select: 
-       case op_groupby: 
-       case op_topn: 
-       case op_sample: 
+       case op_select:
+       case op_groupby:
+       case op_topn:
+       case op_sample:
                r = "project";
                if (rel->op == op_select)
                        r = "select";
@@ -539,7 +540,7 @@ rel_print_(mvc *sql, stream  *fout, sql_
 }
 
 void
-rel_print_refs(mvc *sql, stream* fout, sql_rel *rel, int depth, list *refs, 
int decorate) 
+rel_print_refs(mvc *sql, stream* fout, sql_rel *rel, int depth, list *refs, 
int decorate)
 {
        if (!rel)
                return;
@@ -565,16 +566,16 @@ rel_print_refs(mvc *sql, stream* fout, s
                        }
                }
        break;
-       case op_join: 
-       case op_left: 
-       case op_right: 
-       case op_full: 
-       case op_apply: 
-       case op_semi: 
-       case op_anti: 
-       case op_union: 
-       case op_inter: 
-       case op_except: 
+       case op_join:
+       case op_left:
+       case op_right:
+       case op_full:
+       case op_apply:
+       case op_semi:
+       case op_anti:
+       case op_union:
+       case op_inter:
+       case op_except:
                rel_print_refs(sql, fout, rel->l, depth, refs, decorate);
                rel_print_refs(sql, fout, rel->r, depth, refs, decorate);
                if (rel_is_ref(rel->l) && !find_ref(refs, rel->l)) {
@@ -587,18 +588,18 @@ rel_print_refs(mvc *sql, stream* fout, s
                }
                break;
        case op_project:
_______________________________________________
checkin-list mailing list
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list

Reply via email to