Changeset: 794344ec919b for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=794344ec919b
Modified Files:
        sql/backends/monet5/sql.mx
        sql/storage/bat/bat_storage.c
        sql/test/leaks/Tests/temp2.stable.out
Branch: Feb2013
Log Message:

fixed crash in RAstatement, bug 3306
fixed bat leak in create table.


diffs (53 lines):

diff --git a/sql/backends/monet5/sql.mx b/sql/backends/monet5/sql.mx
--- a/sql/backends/monet5/sql.mx
+++ b/sql/backends/monet5/sql.mx
@@ -7653,6 +7653,8 @@ RAstatement(Client cntxt, MalBlkPtr mb, 
        sql_rel *rel;
        list *refs;
 
+       if (msg)
+               return msg;
        if (!m->sa)
                m->sa = sa_create();
        refs = sa_list(m->sa);
diff --git a/sql/storage/bat/bat_storage.c b/sql/storage/bat/bat_storage.c
--- a/sql/storage/bat/bat_storage.c
+++ b/sql/storage/bat/bat_storage.c
@@ -790,16 +790,6 @@ snapshot_create_idx(sql_trans *tr, sql_i
 }
 
 int
-new_persistent_dbat( sql_dbat *bat)
-{
-       BAT *b = temp_descriptor(bat->dbid);
-
-       bat->dbid = temp_create(b);
-       bat_destroy(b);
-       return LOG_OK;
-}
-
-int
 load_dbat(sql_dbat *bat, int bid)
 {
        BAT *b = quick_descriptor(bid);
@@ -829,7 +819,7 @@ create_del(sql_trans *tr, sql_table *t)
                        return load_dbat(bat, bid);
                ok = LOG_ERR;
        } else if (bat->dbid && !isTempTable(t)) {
-               return new_persistent_dbat(bat);
+               return ok;
        } else if (!bat->dbid) {
                b = bat_new(TYPE_void, TYPE_oid, t->sz);
                bat_set_access(b, BAT_READ);
diff --git a/sql/test/leaks/Tests/temp2.stable.out 
b/sql/test/leaks/Tests/temp2.stable.out
--- a/sql/test/leaks/Tests/temp2.stable.out
+++ b/sql/test/leaks/Tests/temp2.stable.out
@@ -36,7 +36,7 @@ Ready.
 % L1,  L2 # name
 % char,        wrd # type
 % 9,   3 # length
-[ "transient", 168     ]
+[ "transient", 167     ]
 #select 'persistent', count(*) from bbp() as bbp where kind like 'pers%';
 % .L1, .L2 # table_name
 % L1,  L2 # name
_______________________________________________
checkin-list mailing list
[email protected]
http://mail.monetdb.org/mailman/listinfo/checkin-list

Reply via email to