Changeset: 809466d117c1 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=809466d117c1
Modified Files:
        sql/src/server/sql_psm.c
        sql/src/storage/store.c
Branch: default
Log Message:

fixes crash in drop function/procedures and procedures always have side effects.


diffs (35 lines):

diff -r 11422cdd2840 -r 809466d117c1 sql/src/server/sql_psm.c
--- a/sql/src/server/sql_psm.c  Mon Dec 13 08:57:01 2010 +0100
+++ b/sql/src/server/sql_psm.c  Mon Dec 13 09:07:55 2010 +0100
@@ -613,8 +613,8 @@
                                        mvc_create_func(sql, 
sql->session->schema, fname, l, restype, is_aggr, fmod, fnme, q, is_func);
                                } else {
                                        sql_func *f = sf->func;
-                                       f->mod = sa_strdup(sql->sa, fmod);
-                                       f->imp = sa_strdup(sql->sa, fnme);
+                                       f->mod = _strdup(fmod);
+                                       f->imp = _strdup(fnme);
                                        if (res && restype)
                                                f->res = *restype;
                                        f->sql = 0; /* native */
diff -r 11422cdd2840 -r 809466d117c1 sql/src/storage/store.c
--- a/sql/src/storage/store.c   Mon Dec 13 08:57:01 2010 +0100
+++ b/sql/src/storage/store.c   Mon Dec 13 09:07:55 2010 +0100
@@ -3483,7 +3483,7 @@
        sql_table *sysarg = find_sql_table(find_sql_schema(tr, "sys"), "args");
        node *n;
        int number = 0;
-       bit se = FALSE, sql;
+       bit se, sql;
 
        base_init(NULL, &t->base, next_oid(), TR_NEW, func);
        assert(impl && mod);
@@ -3491,7 +3491,7 @@
        t->mod = (mod)?_strdup(mod):NULL; 
        sql = t->sql = (query)?1:0;
        t->aggr = aggr;
-       t->side_effect = se;
+       se = t->side_effect = res?FALSE:TRUE;
        t->ops = list_dup(args, (fdup)&arg_dup);
        t->res.scale = t->res.digits = 0;
        t->res.type = NULL;
_______________________________________________
Checkin-list mailing list
[email protected]
http://mail.monetdb.org/mailman/listinfo/checkin-list

Reply via email to