Changeset: 510882c2bb90 for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB/rev/510882c2bb90
Modified Files:
        sql/backends/monet5/rel_bin.c
        sql/backends/monet5/sql_gencode.c
        sql/server/rel_semantic.c
        sql/server/rel_updates.c
Branch: sqlfuncfix
Log Message:

Reset session status before running parser


diffs (45 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
@@ -3890,7 +3890,7 @@ sql_parse(backend *be, sql_schema *s, co
        sql_rel *rel = rel_parse(be->mvc, s, query, mode);
        stmt *sq = NULL;
 
-       if ((rel = sql_processrelation(be->mvc, rel, 1, 1, 1)))
+       if (rel && (rel = sql_processrelation(be->mvc, rel, 1, 1, 1)))
                sq = rel_bin(be, rel);
        return sq;
 }
diff --git a/sql/backends/monet5/sql_gencode.c 
b/sql/backends/monet5/sql_gencode.c
--- a/sql/backends/monet5/sql_gencode.c
+++ b/sql/backends/monet5/sql_gencode.c
@@ -1062,6 +1062,7 @@ mal_function_find_implementation_address
        m->params = NULL;
        m->sym = NULL;
        m->errstr[0] = '\0';
+       m->session->status = 0;
        (void) sqlparse(m);
        if (m->session->status || m->errstr[0] || !m->sym || m->sym->token != 
SQL_CREATE_FUNC) {
                if (m->errstr[0] == '\0')
diff --git a/sql/server/rel_semantic.c b/sql/server/rel_semantic.c
--- a/sql/server/rel_semantic.c
+++ b/sql/server/rel_semantic.c
@@ -66,6 +66,7 @@ rel_parse(mvc *m, sql_schema *s, const c
        m->params = NULL;
        m->sym = NULL;
        m->errstr[0] = '\0';
+       m->session->status = 0;
        /* via views we give access to protected objects */
        assert(emode == m_instantiate || emode == m_deps);
        m->user_id = USER_MONETDB;
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
@@ -1923,6 +1923,7 @@ rel_parse_val(mvc *m, sql_schema *sch, c
        m->params = NULL;
        m->sym = NULL;
        m->errstr[0] = '\0';
+       m->session->status = 0;
        /* via views we give access to protected objects */
        m->user_id = USER_MONETDB;
 
_______________________________________________
checkin-list mailing list
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list

Reply via email to