Changeset: c25bdb00be23 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=c25bdb00be23
Modified Files:
sql/backends/monet5/sql_execute.c
sql/backends/monet5/sql_gencode.c
Branch: Dec2016
Log Message:
grow the message buffer when a large number of arguments is needed
diffs (31 lines):
diff --git a/sql/backends/monet5/sql_execute.c
b/sql/backends/monet5/sql_execute.c
--- a/sql/backends/monet5/sql_execute.c
+++ b/sql/backends/monet5/sql_execute.c
@@ -841,13 +841,9 @@ RAstatement2(Client cntxt, MalBlkPtr mb,
}
refs = sa_list(m->sa);
rel = rel_read(m, *expr, &pos, refs);
- if (!rel)
+ if (!rel || monet5_create_relational_function(m, *mod, *nme, rel,
stmt_list(m->sa, ops), 0) < 0)
throw(SQL, "sql.register", "Cannot register %s", buf);
- if (rel) {
- monet5_create_relational_function(m, *mod, *nme, rel,
stmt_list(m->sa, ops), 0);
- rel_destroy(rel);
- }
+ rel_destroy(rel);
sqlcleanup(m, 0);
return msg;
}
-
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
@@ -658,6 +658,8 @@ static int
sql_subtype *t = tail_type(op);
const char *nme =
(op->op3)?op->op3->op4.aval->data.val.sval:op->cname;
+ if ((nr + 100) > len)
+ buf = GDKrealloc(buf, len*=2);
nr += snprintf(buf+nr, len-nr, "%s %s(%u,%u)%c", nme,
t->type->sqlname, t->digits, t->scale, n->next?',':' ');
}
s = buf;
_______________________________________________
checkin-list mailing list
[email protected]
https://www.monetdb.org/mailman/listinfo/checkin-list