Changeset: 2a3006f517d2 for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=2a3006f517d2
Modified Files:
        sql/server/rel_select.c
        sql/server/rel_updates.c
        sql/server/sql_mvc.c
        sql/server/sql_mvc.h
Branch: subquery
Log Message:

small revert of use_views changes.
Still needed for triggers.


diffs (57 lines):

diff --git a/sql/server/rel_select.c b/sql/server/rel_select.c
--- a/sql/server/rel_select.c
+++ b/sql/server/rel_select.c
@@ -1037,7 +1037,7 @@ rel_column_ref(sql_query *query, sql_rel
 
                /* some views are just in the stack,
                   like before and after updates views */
-               if (rel && !exp) {
+               if (rel && !exp && sql->use_views) {
                        sql_rel *v = stack_find_rel_view(sql, tname);
 
                        if (v) {
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
@@ -2204,7 +2204,9 @@ rel_updates(sql_query *query, symbol *s)
 {
        mvc *sql = query->sql;
        sql_rel *ret = NULL;
+       int old = sql->use_views;
 
+       sql->use_views = 1;
        switch (s->token) {
        case SQL_COPYFROM:
        {
@@ -2296,7 +2298,9 @@ rel_updates(sql_query *query, symbol *s)
                sql->type = Q_UPDATE;
        } break;
        default:
+               sql->use_views = old;
                return sql_error(sql, 01, SQLSTATE(42000) "Updates statement 
unknown Symbol(%p)->token = %s", s, token2string(s->token));
        }
+       sql->use_views = old;
        return ret;
 }
diff --git a/sql/server/sql_mvc.c b/sql/server/sql_mvc.c
--- a/sql/server/sql_mvc.c
+++ b/sql/server/sql_mvc.c
@@ -653,6 +653,7 @@ mvc_create(int clientid, backend_stack s
 
        m->topvars = 0;
        m->frame = 1;
+       m->use_views = 0;
        m->argmax = MAXPARAMS;
        m->args = NEW_ARRAY(atom*,m->argmax);
        if(!m->vars || !m->args) {
diff --git a/sql/server/sql_mvc.h b/sql/server/sql_mvc.h
--- a/sql/server/sql_mvc.h
+++ b/sql/server/sql_mvc.h
@@ -109,6 +109,7 @@ typedef struct mvc {
        int topvars;
        int sizevars;
        int frame;
+       int use_views;
        atom **args;
        int argc;
        int argmax;
_______________________________________________
checkin-list mailing list
[email protected]
https://www.monetdb.org/mailman/listinfo/checkin-list

Reply via email to