Changeset: 0c8fdd94e5c8 for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=0c8fdd94e5c8
Modified Files:
clients/Tests/MAL-signatures.stable.out
clients/Tests/MAL-signatures.stable.out.int128
monetdb5/extras/mal_optimizer_template/Tests/opt_sql_append.stable.out
monetdb5/extras/mal_optimizer_template/Tests/opt_sql_append.stable.out.Windows
sql/backends/monet5/sql.c
sql/backends/monet5/sql.mal
sql/common/sql_types.c
sql/server/rel_updates.c
sql/test/emptydb/Tests/check.stable.out
sql/test/emptydb/Tests/check.stable.out.32bit
sql/test/emptydb/Tests/check.stable.out.int128
sql/test/sys-schema/Tests/systemfunctions.stable.out
sql/test/sys-schema/Tests/systemfunctions.stable.out.int128
Branch: default
Log Message:
Changing copyfrom MAL function signature to accept a schema and table name
instead of a pointer. This allows clearer ouput from explain plans
diffs (truncated from 381 to 300 lines):
diff --git a/clients/Tests/MAL-signatures.stable.out
b/clients/Tests/MAL-signatures.stable.out
--- a/clients/Tests/MAL-signatures.stable.out
+++ b/clients/Tests/MAL-signatures.stable.out
@@ -11679,7 +11679,7 @@ stdout of test 'MAL-signatures` in direc
[ "sql", "bind_idxbat", "pattern sql.bind_idxbat(mvc:int, schema:str,
table:str, index:str, access:int, part_nr:int, nr_parts:int):bat[:any_1] ",
"mvc_bind_idxbat_wrap;", "Bind the 'schema.table.index' BAT with
access kind:\n\t0 - base table\n\t1 - inserts\n\t2 - updates" ]
[ "sql", "clear_table", "unsafe pattern sql.clear_table(sname:str,
tname:str):lng ", "mvc_clear_table_wrap;", "Clear the table
sname.tname." ]
[ "sql", "commit", "pattern sql.commit():void ", "SQLcommit;",
"Trigger the commit operation for a MAL block" ]
-[ "sql", "copy_from", "unsafe pattern sql.copy_from(t:ptr, sep:str,
rsep:str, ssep:str, ns:str, fname:str, nr:lng, offset:lng, locked:int,
best:int, fwf:str, onclient:int):bat[:any]... ", "mvc_import_table_wrap;",
"Import a table from bstream s with the \n\tgiven tuple and seperators
(sep/rsep)" ]
+[ "sql", "copy_from", "unsafe pattern sql.copy_from(sname:str,
tname:str, sep:str, rsep:str, ssep:str, ns:str, fname:str, nr:lng, offset:lng,
locked:int, best:int, fwf:str, onclient:int):bat[:any]... ",
"mvc_import_table_wrap;", "Import a table from bstream s with the
\n\tgiven tuple and seperators (sep/rsep)" ]
[ "sql", "copy_rejects", "pattern sql.copy_rejects() (rowid:bat[:lng],
fldid:bat[:int], msg:bat[:str], inp:bat[:str]) ", "COPYrejects;", "" ]
[ "sql", "copy_rejects_clear", "pattern sql.copy_rejects_clear():void
", "COPYrejects_clear;", "" ]
[ "sql", "count", "pattern sql.count(b:any_1, ignils:bit, s:lng,
e:lng):lng ", "SQLcount;", "return count of groups" ]
diff --git a/clients/Tests/MAL-signatures.stable.out.int128
b/clients/Tests/MAL-signatures.stable.out.int128
--- a/clients/Tests/MAL-signatures.stable.out.int128
+++ b/clients/Tests/MAL-signatures.stable.out.int128
@@ -16084,7 +16084,7 @@ stdout of test 'MAL-signatures` in direc
[ "sql", "bind_idxbat", "pattern sql.bind_idxbat(mvc:int, schema:str,
table:str, index:str, access:int, part_nr:int, nr_parts:int):bat[:any_1] ",
"mvc_bind_idxbat_wrap;", "Bind the 'schema.table.index' BAT with
access kind:\n\t0 - base table\n\t1 - inserts\n\t2 - updates" ]
[ "sql", "clear_table", "unsafe pattern sql.clear_table(sname:str,
tname:str):lng ", "mvc_clear_table_wrap;", "Clear the table
sname.tname." ]
[ "sql", "commit", "pattern sql.commit():void ", "SQLcommit;",
"Trigger the commit operation for a MAL block" ]
-[ "sql", "copy_from", "unsafe pattern sql.copy_from(t:ptr, sep:str,
rsep:str, ssep:str, ns:str, fname:str, nr:lng, offset:lng, locked:int,
best:int, fwf:str, onclient:int):bat[:any]... ", "mvc_import_table_wrap;",
"Import a table from bstream s with the \n\tgiven tuple and seperators
(sep/rsep)" ]
+[ "sql", "copy_from", "unsafe pattern sql.copy_from(sname:str,
tname:str, sep:str, rsep:str, ssep:str, ns:str, fname:str, nr:lng, offset:lng,
locked:int, best:int, fwf:str, onclient:int):bat[:any]... ",
"mvc_import_table_wrap;", "Import a table from bstream s with the
\n\tgiven tuple and seperators (sep/rsep)" ]
[ "sql", "copy_rejects", "pattern sql.copy_rejects() (rowid:bat[:lng],
fldid:bat[:int], msg:bat[:str], inp:bat[:str]) ", "COPYrejects;", "" ]
[ "sql", "copy_rejects_clear", "pattern sql.copy_rejects_clear():void
", "COPYrejects_clear;", "" ]
[ "sql", "count", "pattern sql.count(b:any_1, ignils:bit, s:lng,
e:lng):lng ", "SQLcount;", "return count of groups" ]
diff --git
a/monetdb5/extras/mal_optimizer_template/Tests/opt_sql_append.stable.out
b/monetdb5/extras/mal_optimizer_template/Tests/opt_sql_append.stable.out
--- a/monetdb5/extras/mal_optimizer_template/Tests/opt_sql_append.stable.out
+++ b/monetdb5/extras/mal_optimizer_template/Tests/opt_sql_append.stable.out
@@ -59,15 +59,15 @@ stdout of test 'opt_sql_append` in direc
% .explain # table_name
% mal # name
% clob # type
-% 186 # length
+% 193 # length
function user.s10_0():void;
- X_1:void := querylog.define("explain copy into ttt from
\\'/tmp/xyz\\';":str, "sequential_pipe":str, 22:int);
+ X_1:void := querylog.define("explain copy into ttt from
\\'/tmp/xyz\\';":str, "sequential_pipe":str, 23:int);
X_4:int := sql.mvc();
- (X_26:bat[:int], X_27:bat[:int], X_28:bat[:int]) :=
sql.copy_from(0x2e73790:ptr, "|":str, "\n":str, nil:str, "null":str,
"/tmp/xyz":str, -1:lng, 0:lng, 0:int, 0:int, nil:str, 0:int);
- X_30:int := sql.append(X_4:int, "sys":str, "ttt":str, "a":str,
X_26:bat[:int]);
- X_35:int := sql.append(X_30:int, "sys":str, "ttt":str, "b":str,
X_27:bat[:int]);
- X_38:int := sql.append(X_35:int, "sys":str, "ttt":str, "c":str,
X_28:bat[:int]);
- X_40:lng := aggr.count(X_28:bat[:int]);
+ (X_28:bat[:int], X_29:bat[:int], X_30:bat[:int]) :=
sql.copy_from("sys":str, "ttt":str, "|":str, "\n":str, nil:str, "null":str,
"/tmp/xyz":str, -1:lng, 0:lng, 0:int, 0:int, nil:str, 0:int);
+ X_32:int := sql.append(X_4:int, "sys":str, "ttt":str, "a":str,
X_28:bat[:int]);
+ X_35:int := sql.append(X_32:int, "sys":str, "ttt":str, "b":str,
X_29:bat[:int]);
+ X_38:int := sql.append(X_35:int, "sys":str, "ttt":str, "c":str,
X_30:bat[:int]);
+ X_40:lng := aggr.count(X_30:bat[:int]);
sql.affectedRows(X_38:int, X_40:lng);
end user.s10_0;
#inline actions= 0 time=1 usec
@@ -118,15 +118,15 @@ end user.s10_0;
% .explain # table_name
% mal # name
% clob # type
-% 186 # length
+% 193 # length
function user.s26_0():void;
- X_1:void := querylog.define("explain copy into ttt from
\\'/tmp/xyz\\';":str, "user_0":str, 22:int);
+ X_1:void := querylog.define("explain copy into ttt from
\\'/tmp/xyz\\';":str, "user_0":str, 23:int);
X_4:int := sql.mvc();
- (X_26:bat[:int], X_27:bat[:int], X_28:bat[:int]) :=
sql.copy_from(0x2e73790:ptr, "|":str, "\n":str, nil:str, "null":str,
"/tmp/xyz":str, -1:lng, 0:lng, 0:int, 0:int, nil:str, 0:int);
- X_30:int := sql.append(X_4:int, "sys":str, "ttt":str, "a":str,
X_26:bat[:int]);
- X_35:int := sql.append(X_30:int, "sys":str, "ttt":str, "b":str,
X_27:bat[:int]);
- X_40:lng := aggr.count(X_28:bat[:int]);
- X_38:int := sql.append(X_35:int, "sys":str, "ttt":str, "c":str,
X_28:bat[:int]);
+ (X_28:bat[:int], X_29:bat[:int], X_30:bat[:int]) :=
sql.copy_from("sys":str, "ttt":str, "|":str, "\n":str, nil:str, "null":str,
"/tmp/xyz":str, -1:lng, 0:lng, 0:int, 0:int, nil:str, 0:int);
+ X_32:int := sql.append(X_4:int, "sys":str, "ttt":str, "a":str,
X_28:bat[:int]);
+ X_35:int := sql.append(X_32:int, "sys":str, "ttt":str, "b":str,
X_29:bat[:int]);
+ X_40:lng := aggr.count(X_30:bat[:int]);
+ X_38:int := sql.append(X_35:int, "sys":str, "ttt":str, "c":str,
X_30:bat[:int]);
sql.affectedRows(X_38:int, X_40:lng);
end user.s26_0;
#inline actions= 0 time=1 usec
diff --git
a/monetdb5/extras/mal_optimizer_template/Tests/opt_sql_append.stable.out.Windows
b/monetdb5/extras/mal_optimizer_template/Tests/opt_sql_append.stable.out.Windows
---
a/monetdb5/extras/mal_optimizer_template/Tests/opt_sql_append.stable.out.Windows
+++
b/monetdb5/extras/mal_optimizer_template/Tests/opt_sql_append.stable.out.Windows
@@ -70,15 +70,15 @@ stdout of test 'opt_sql_append` in direc
% .explain # table_name
% mal # name
% clob # type
-% 183 # length
+% 190 # length
function user.s10_0():void;
- X_1:void := querylog.define("explain copy into ttt from
E\\'a:\\\\\\\\tmp/xyz\\';":str, "sequential_pipe":str, 22:int);
+ X_1:void := querylog.define("explain copy into ttt from
E\\'a:\\\\\\\\tmp/xyz\\';":str, "sequential_pipe":str, 23:int);
X_4:int := sql.mvc();
- (X_26:bat[:int], X_27:bat[:int], X_28:bat[:int]) :=
sql.copy_from(0x2e73790:ptr, "|":str, "\n":str, nil:str, "null":str,
"a:\\tmp/xyz":str, -1:lng, 0:lng, 0:int, 0:int, nil:str, 0:int);
- X_30:int := sql.append(X_4:int, "sys":str, "ttt":str, "a":str,
X_26:bat[:int]);
- X_35:int := sql.append(X_30:int, "sys":str, "ttt":str, "b":str,
X_27:bat[:int]);
- X_38:int := sql.append(X_35:int, "sys":str, "ttt":str, "c":str,
X_28:bat[:int]);
- X_40:lng := aggr.count(X_28:bat[:int]);
+ (X_28:bat[:int], X_29:bat[:int], X_30:bat[:int]) :=
sql.copy_from("sys":str, "ttt":str, "|":str, "\n":str, nil:str, "null":str,
"a:\\tmp/xyz":str, -1:lng, 0:lng, 0:int, 0:int, nil:str, 0:int);
+ X_32:int := sql.append(X_4:int, "sys":str, "ttt":str, "a":str,
X_28:bat[:int]);
+ X_35:int := sql.append(X_32:int, "sys":str, "ttt":str, "b":str,
X_29:bat[:int]);
+ X_38:int := sql.append(X_35:int, "sys":str, "ttt":str, "c":str,
X_30:bat[:int]);
+ X_40:lng := aggr.count(X_30:bat[:int]);
sql.affectedRows(X_38:int, X_40:lng);
end user.s10_0;
#inline actions= 0 time=1 usec
@@ -125,15 +125,15 @@ end user.s10_0;
% .explain # table_name
% mal # name
% clob # type
-% 182 # length
+% 189 # length
function user.s26_0():void;
- X_1:void := querylog.define("explain copy into ttt from
\\'Z:/tmp/xyz\\';":str, "user_0":str, 22:int);
+ X_1:void := querylog.define("explain copy into ttt from
\\'Z:/tmp/xyz\\';":str, "user_0":str, 23:int);
X_4:int := sql.mvc();
- (X_26:bat[:int], X_27:bat[:int], X_28:bat[:int]) :=
sql.copy_from(0x2e73790:ptr,, "|":str, "\n":str, nil:str, "null":str,
"Z:/tmp/xyz":str, -1:lng, 0:lng, 0:int, 0:int, nil:str, 0:int);
- X_30:int := sql.append(X_4:int, "sys":str, "ttt":str, "a":str,
X_26:bat[:int]);
- X_35:int := sql.append(X_30:int, "sys":str, "ttt":str, "b":str,
X_27:bat[:int]);
- X_40:lng := aggr.count(X_28:bat[:int]);
- X_38:int := sql.append(X_35:int, "sys":str, "ttt":str, "c":str,
X_28:bat[:int]);
+ (X_28:bat[:int], X_29:bat[:int], X_30:bat[:int]) :=
sql.copy_from("sys":str, "ttt":str, "|":str, "\n":str, nil:str, "null":str,
"Z:/tmp/xyz":str, -1:lng, 0:lng, 0:int, 0:int, nil:str, 0:int);
+ X_32:int := sql.append(X_4:int, "sys":str, "ttt":str, "a":str,
X_28:bat[:int]);
+ X_35:int := sql.append(X_32:int, "sys":str, "ttt":str, "b":str,
X_29:bat[:int]);
+ X_40:lng := aggr.count(X_30:bat[:int]);
+ X_38:int := sql.append(X_35:int, "sys":str, "ttt":str, "c":str,
X_30:bat[:int]);
sql.affectedRows(X_38:int, X_40:lng);
end user.s26_0;
#inline actions= 0 time=0 usec
diff --git a/sql/backends/monet5/sql.c b/sql/backends/monet5/sql.c
--- a/sql/backends/monet5/sql.c
+++ b/sql/backends/monet5/sql.c
@@ -3027,20 +3027,24 @@ str
mvc_import_table_wrap(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr pci)
{
backend *be;
+ mvc *sql;
BAT **b = NULL;
ssize_t len = 0;
- sql_table *t = *(sql_table **) getArgReference(stk, pci, pci->retc + 0);
- const char *tsep = *getArgReference_str(stk, pci, pci->retc + 1);
- const char *rsep = *getArgReference_str(stk, pci, pci->retc + 2);
- const char *ssep = *getArgReference_str(stk, pci, pci->retc + 3);
- const char *ns = *getArgReference_str(stk, pci, pci->retc + 4);
- const char *fname = *getArgReference_str(stk, pci, pci->retc + 5);
- lng sz = *getArgReference_lng(stk, pci, pci->retc + 6);
- lng offset = *getArgReference_lng(stk, pci, pci->retc + 7);
- int locked = *getArgReference_int(stk, pci, pci->retc + 8);
- int besteffort = *getArgReference_int(stk, pci, pci->retc + 9);
- char *fixed_widths = *getArgReference_str(stk, pci, pci->retc + 10);
- int onclient = *getArgReference_int(stk, pci, pci->retc + 11);
+ sql_schema *sch = NULL;
+ sql_table *t = NULL;
+ const char *sname = *getArgReference_str(stk, pci, pci->retc + 0);
+ const char *tname = *getArgReference_str(stk, pci, pci->retc + 1);
+ const char *tsep = *getArgReference_str(stk, pci, pci->retc + 2);
+ const char *rsep = *getArgReference_str(stk, pci, pci->retc + 3);
+ const char *ssep = *getArgReference_str(stk, pci, pci->retc + 4);
+ const char *ns = *getArgReference_str(stk, pci, pci->retc + 5);
+ const char *fname = *getArgReference_str(stk, pci, pci->retc + 6);
+ lng sz = *getArgReference_lng(stk, pci, pci->retc + 7);
+ lng offset = *getArgReference_lng(stk, pci, pci->retc + 8);
+ int locked = *getArgReference_int(stk, pci, pci->retc + 9);
+ int besteffort = *getArgReference_int(stk, pci, pci->retc + 10);
+ char *fixed_widths = *getArgReference_str(stk, pci, pci->retc + 11);
+ int onclient = *getArgReference_int(stk, pci, pci->retc + 12);
str msg = MAL_SUCCEED;
bstream *s = NULL;
stream *ss;
@@ -3048,11 +3052,17 @@ mvc_import_table_wrap(Client cntxt, MalB
(void) mb; /* NOT USED */
if ((msg = checkSQLContext(cntxt)) != NULL)
return msg;
- if (onclient && !cntxt->filetrans) {
- throw(MAL, "sql.copy_from", "cannot transfer files from
client");
- }
+ if (onclient && !cntxt->filetrans)
+ throw(SQL, "sql.copy_from", SQLSTATE(42000) "Cannot transfer
files from client");
be = cntxt->sqlcontext;
+ sql = be->mvc;
+
+ if (!(sch = mvc_bind_schema(sql, sname)))
+ throw(SQL, "sql.copy_from", SQLSTATE(3F000) "Schema missing
%s", sname);
+ if (!(t = mvc_bind_table(sql, sch, tname)))
+ throw(SQL, "sql.copy_from", SQLSTATE(42S02) "Table missing %s",
tname);
+
/* The CSV parser expects ssep to have the value 0 if the user does not
* specify a quotation character
*/
@@ -3280,19 +3290,17 @@ mvc_bin_import_table_wrap(Client cntxt,
if ((msg = checkSQLContext(cntxt)) != NULL)
return msg;
- if ((s = mvc_bind_schema(m, sname)) == NULL)
- throw(SQL, "sql.import_table", SQLSTATE(3F000) "Schema missing
%s",sname);
- t = mvc_bind_table(m, s, tname);
- if (!t)
- throw(SQL, "sql", SQLSTATE(42S02) "Table missing %s", tname);
+ if (!(s = mvc_bind_schema(m, sname)))
+ throw(SQL, "sql.import_table", SQLSTATE(3F000) "Schema missing
%s", sname);
+ if (!(t = mvc_bind_table(m, s, tname)))
+ throw(SQL, "sql.import_table", SQLSTATE(42S02) "Table missing
%s", tname);
if (list_length(t->columns.set) != (pci->argc - (3 + pci->retc)))
- throw(SQL, "sql", SQLSTATE(42000) "Not enough columns found in
input file");
+ throw(SQL, "sql.import_table", SQLSTATE(42000) "Not enough
columns found in input file");
if (2 * pci->retc + 3 != pci->argc)
- throw(SQL, "sql", SQLSTATE(42000) "Not enough output values");
-
- if (onclient && !cntxt->filetrans) {
- throw(MAL, "sql.copy_from", "cannot transfer files from
client");
- }
+ throw(SQL, "sql.import_table", SQLSTATE(42000) "Not enough
output values");
+
+ if (onclient && !cntxt->filetrans)
+ throw(SQL, "sql.copy_from", SQLSTATE(42000) "Cannot transfer
files from client");
backend *be = cntxt->sqlcontext;
diff --git a/sql/backends/monet5/sql.mal b/sql/backends/monet5/sql.mal
--- a/sql/backends/monet5/sql.mal
+++ b/sql/backends/monet5/sql.mal
@@ -347,7 +347,7 @@ unsafe pattern affectedRows(mvc:int, nr:
address mvc_affected_rows_wrap
comment "export the number of affected rows by the current query";
-unsafe pattern copy_from( t:ptr,
+unsafe pattern copy_from( sname:str, tname:str,
sep:str, rsep:str, ssep:str, ns:str, fname:str, nr:lng, offset:lng,
locked:int, best:int, fwf:str, onclient:int) (:bat[:any]...)
address mvc_import_table_wrap
comment "Import a table from bstream s with the
diff --git a/sql/common/sql_types.c b/sql/common/sql_types.c
--- a/sql/common/sql_types.c
+++ b/sql/common/sql_types.c
@@ -1462,7 +1462,7 @@ sqltypeinit( sql_allocator *sa)
sql_type *SECINT, *MONINT, *DTE;
sql_type *TME, *TMETZ, *TMESTAMP, *TMESTAMPTZ;
sql_type *BLOB;
- sql_type *ANY, *TABLE, *PTR;
+ sql_type *ANY, *TABLE;
sql_type *GEOM, *MBR;
sql_func *f;
sql_arg *sres;
@@ -1472,7 +1472,7 @@ sqltypeinit( sql_allocator *sa)
t = ts;
TABLE = *t++ = sql_create_type(sa, "TABLE", 0, 0, 0, EC_TABLE, "bat");
- PTR = *t++ = sql_create_type(sa, "PTR", 0, 0, 0, EC_TABLE, "ptr");
+ *t++ = sql_create_type(sa, "PTR", 0, 0, 0, EC_TABLE, "ptr");
BIT = *t++ = sql_create_type(sa, "BOOLEAN", 1, 0, 2, EC_BIT, "bit");
sql_create_alias(sa, BIT->sqlname, "BOOL");
@@ -2219,8 +2219,9 @@ sqltypeinit( sql_allocator *sa)
sres = create_arg(sa, NULL, sql_create_subtype(sa, TABLE, 0, 0),
ARG_OUT);
/* copyfrom fname (arg 12) */
f=sql_create_func_(sa, "copyfrom", "sql", "copy_from",
- list_append( list_append( list_append( list_append(
list_append( list_append(list_append (list_append
(list_append(list_append(list_append(list_append(sa_list(sa),
- create_arg(sa, NULL, sql_create_subtype(sa, PTR, 0, 0),
ARG_IN)),
+ list_append( list_append( list_append( list_append(
list_append( list_append( list_append(list_append (list_append
(list_append(list_append(list_append(list_append(sa_list(sa),
+ create_arg(sa, NULL, sql_create_subtype(sa, STR, 0, 0),
ARG_IN)),
+ create_arg(sa, NULL, sql_create_subtype(sa, STR, 0, 0),
ARG_IN)),
create_arg(sa, NULL, sql_create_subtype(sa, STR, 0, 0),
ARG_IN)),
create_arg(sa, NULL, sql_create_subtype(sa, STR, 0, 0),
ARG_IN)),
create_arg(sa, NULL, sql_create_subtype(sa, STR, 0, 0),
ARG_IN)),
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
@@ -1578,15 +1578,16 @@ rel_import(mvc *sql, sql_table *t, const
sql_subtype tpe;
sql_exp *import;
sql_schema *sys = mvc_bind_schema(sql, "sys");
- sql_subfunc *f = sql_find_func(sql->sa, sys, "copyfrom", 12, F_UNION,
NULL);
+ sql_subfunc *f = sql_find_func(sql->sa, sys, "copyfrom", 13, F_UNION,
NULL);
char *fwf_string = NULL;
if (!f) /* we do expect copyfrom to be there */
return NULL;
f->res = table_column_types(sql->sa, t);
sql_find_subtype(&tpe, "varchar", 0, 0);
- args = append( append( append( append( append( new_exp_list(sql->sa),
- exp_atom_ptr(sql->sa, t)),
+ args = append( append( append( append( append( append(
new_exp_list(sql->sa),
+ exp_atom_str(sql->sa, t->s->base.name, &tpe)),
+ exp_atom_str(sql->sa, t->base.name, &tpe)),
exp_atom_str(sql->sa, tsep, &tpe)),
exp_atom_str(sql->sa, rsep, &tpe)),
exp_atom_str(sql->sa, ssep, &tpe)),
diff --git a/sql/test/emptydb/Tests/check.stable.out
b/sql/test/emptydb/Tests/check.stable.out
--- a/sql/test/emptydb/Tests/check.stable.out
+++ b/sql/test/emptydb/Tests/check.stable.out
@@ -2379,7 +2379,7 @@ drop function pcre_replace(string, strin
[ "sys", "concat", "SYSTEM", "+", "calc", "Internal C",
"Scalar function", false, false, false, "res_0", "clob", 0,
0, "out", "arg_1", "clob", 0, 0, "in", "arg_2",
"clob", 0, 0, "in", NULL, NULL, NULL, NULL, NULL, NULL,
NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL,
NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL,
NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL,
NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL,
NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL,
NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL ]
[ "sys", "concat", "SYSTEM", "+", "calc", "Internal C",
"Scalar function", false, false, false, "res_0", "varchar",
0, 0, "out", "arg_1", "varchar", 0, 0, "in",
"arg_2", "varchar", 0, 0, "in", NULL, NULL, NULL,
NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL,
NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL,
NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL,
NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL,
NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL,
NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL,
NULL, NULL ]
[ "sys", "contains", "SYSTEM", "create function contains(a
geometry, x double, y double) returns boolean external name
geom.\"Contains\";", "geom", "MAL", "Scalar function", false, false,
false, "result", "boolean", 1, 0, "out", "a",
"geometry", 0, 0, "in", "x", "double", 53, 0,
"in", "y", "double", 53, 0, "in", NULL, NULL, NULL,
NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL,
NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL,
NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL,
NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL,
NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL,
NULL, NULL, NULL, NULL, NULL, NULL, NULL ]
-[ "sys", "copyfrom", "SYSTEM", "copy_from", "sql",
"Internal C", "Function returning a table", false, true, false,
"res_0", "table", 0, 0, "out", "arg_1", "ptr",
0, 0, "in", "arg_2", "varchar", 0, 0, "in",
"arg_3", "varchar", 0, 0, "in", "arg_4",
"varchar", 0, 0, "in", "arg_5", "varchar", 0,
0, "in", "arg_6", "varchar", 0, 0, "in",
"arg_7", "bigint", 64, 0, "in", "arg_8",
"bigint", 64, 0, "in", "arg_9", "int", 32, 0,
"in", "arg_10", "int", 32, 0, "in", "arg_11",
"varchar", 0, 0, "in", "arg_12", "int", 32, 0,
"in", NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL,
NULL, NULL, NULL, NULL, NULL, NULL ]
+[ "sys", "copyfrom", "SYSTEM", "copy_from", "sql",
"Internal C", "Function returning a table", false, true, false,
"res_0", "table", 0, 0, "out", "arg_1",
"varchar", 0, 0, "in", "arg_2", "varchar", 0,
0, "in", "arg_3", "varchar", 0, 0, "in",
"arg_4", "varchar", 0, 0, "in", "arg_5",
"varchar", 0, 0, "in", "arg_6", "varchar", 0,
0, "in", "arg_7", "varchar", 0, 0, "in",
"arg_8", "bigint", 64, 0, "in", "arg_9",
"bigint", 64, 0, "in", "arg_10", "int", 32, 0,
"in", "arg_11", "int", 32, 0, "in", "arg_12",
"varchar", 0, 0, "in", "arg_13", "int", 32, 0,
"in", NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL,
NULL ]
[ "sys", "copyfrom", "SYSTEM", "importTable", "sql",
"Internal C", "Function returning a table", false, true, false,
"res_0", "table", 0, 0, "out", "arg_1",
"varchar", 0, 0, "in", "arg_2", "varchar", 0,
0, "in", "arg_3", "int", 32, 0, "in", NULL, NULL,
NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL,
NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL,
NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL,
NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL,
NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL,
NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL ]
[ "sys", "corr", "SYSTEM", "create aggregate corr(e1 bigint, e2
bigint) returns double external name \"aggr\".\"corr\";", "aggr", "MAL",
"Aggregate function", false, false, false, "result", "double",
53, 0, "out", "e1", "bigint", 64, 0, "in", "e2",
"bigint", 64, 0, "in", NULL, NULL, NULL, NULL, NULL,
NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL,
NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL,
NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL,
NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL,
NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL,
NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL
]
[ "sys", "corr", "SYSTEM", "create aggregate corr(e1 double, e2
double) returns double external name \"aggr\".\"corr\";", "aggr", "MAL",
"Aggregate function", false, false, false, "result", "double",
53, 0, "out", "e1", "double", 53, 0, "in", "e2",
"double", 53, 0, "in", NULL, NULL, NULL, NULL, NULL,
NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL,
NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL,
NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL,
NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL,
NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL,
NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL
]
diff --git a/sql/test/emptydb/Tests/check.stable.out.32bit
b/sql/test/emptydb/Tests/check.stable.out.32bit
--- a/sql/test/emptydb/Tests/check.stable.out.32bit
+++ b/sql/test/emptydb/Tests/check.stable.out.32bit
@@ -2371,7 +2371,7 @@ drop function pcre_replace(string, strin
[ "sys", "concat", "SYSTEM", "+", "calc", "Internal C",
"Scalar function", false, false, false, "res_0", "clob", 0,
0, "out", "arg_1", "clob", 0, 0, "in", "arg_2",
"clob", 0, 0, "in", NULL, NULL, NULL, NULL, NULL, NULL,
NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL,
NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL,
NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL,
NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL,
NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL,
NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL ]
[ "sys", "concat", "SYSTEM", "+", "calc", "Internal C",
"Scalar function", false, false, false, "res_0", "varchar",
0, 0, "out", "arg_1", "varchar", 0, 0, "in",
"arg_2", "varchar", 0, 0, "in", NULL, NULL, NULL,
NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL,
NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL,
NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL,
NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL,
NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL,
NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL,
NULL, NULL ]
[ "sys", "contains", "SYSTEM", "create function contains(a
geometry, x double, y double) returns boolean external name
geom.\"Contains\";", "geom", "MAL", "Scalar function", false, false,
false, "result", "boolean", 1, 0, "out", "a",
"geometry", 0, 0, "in", "x", "double", 53, 0,
"in", "y", "double", 53, 0, "in", NULL, NULL, NULL,
NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL,
NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL,
NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL,
NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL,
NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL,
NULL, NULL, NULL, NULL, NULL, NULL, NULL ]
-[ "sys", "copyfrom", "SYSTEM", "copy_from", "sql",
"Internal C", "Function returning a table", false, true, false,
"res_0", "table", 0, 0, "out", "arg_1", "ptr",
0, 0, "in", "arg_2", "varchar", 0, 0, "in",
"arg_3", "varchar", 0, 0, "in", "arg_4",
"varchar", 0, 0, "in", "arg_5", "varchar", 0,
0, "in", "arg_6", "varchar", 0, 0, "in",
"arg_7", "bigint", 64, 0, "in", "arg_8",
"bigint", 64, 0, "in", "arg_9", "int", 32, 0,
"in", "arg_10", "int", 32, 0, "in", "arg_11",
"varchar", 0, 0, "in", "arg_12", "int", 32, 0,
"in", NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL,
NULL, NULL, NULL, NULL, NULL, NULL ]
_______________________________________________
checkin-list mailing list
[email protected]
https://www.monetdb.org/mailman/listinfo/checkin-list