Changeset: 7d936d398d87 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=7d936d398d87
Modified Files:
monetdb5/mal/mal_interpreter.mx
sql/backends/monet5/sql_gencode.c
Branch: Dec2011
Log Message:
make sure return statements are true assignments. This solves problems
with datacell and zones tests.
diffs (50 lines):
diff --git a/monetdb5/mal/mal_interpreter.mx b/monetdb5/mal/mal_interpreter.mx
--- a/monetdb5/mal/mal_interpreter.mx
+++ b/monetdb5/mal/mal_interpreter.mx
@@ -758,7 +758,6 @@ DFLOWadmission(lng argclaim, lng hotclai
PARDEBUG
mnstr_printf(GDKstdout, "#DFLOWadmit %3d thread %d pool " LLFMT "
claims " LLFMT "," LLFMT "\n",
memoryclaims, THRgettid(), memorypool,
argclaim, hotclaim);
- assert(memoryclaims >= 0);
mal_unset_lock(mal_contextLock, "DFLOWdelay");
return 0;
}
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
@@ -207,6 +207,12 @@ dump_cols(MalBlkPtr mb, list *l, InstrPt
q = pushArgument(mb, q, c->nr);
}
q->retc = q->argc;
+ /* Lets make it a propper assignment */
+ for (i = 0, n = l->h; n; n = n->next, i++) {
+ stmt *c = n->data;
+
+ q = pushArgument(mb, q, c->nr);
+ }
return q;
}
@@ -225,6 +231,7 @@ table_func_create_result( MalBlkPtr mb,
q = pushReturn(mb, q, newTmpVariable(mb, type));
else
setVarType(mb,getArg(q,0), type);
+ setVarUDFtype(mb, getArg(q,i));
}
return q;
}
@@ -2236,14 +2243,7 @@ monet5_create_table_function(ptr M, char
(void)t;
r = rel_optimizer(m, rel);
s = rel_bin(m, r);
-/*
- if (s && s->type == st_ordered) {
- stmt *order = s->op1;
- stmt *ns = s->op2;
- s = sql_reorder(order, ns);
- }
-*/
if (s->type == st_list && s->nrcols == 0 && s->key) {
/* row to columns */
node *n;
_______________________________________________
Checkin-list mailing list
[email protected]
http://mail.monetdb.org/mailman/listinfo/checkin-list