Changeset: cb4380ea6bb0 for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB/rev/cb4380ea6bb0
Modified Files:
        clients/Tests/MAL-signatures-hge.test
        clients/Tests/MAL-signatures.test
        monetdb5/modules/mal/batcalc.c
        monetdb5/modules/mal/calc.c
        sql/test/emptydb/Tests/check.stable.out
        sql/test/emptydb/Tests/check.stable.out.32bit
        sql/test/emptydb/Tests/check.stable.out.int128
Branch: new-avg
Log Message:

add batcalc versions of num_div


diffs (221 lines):

diff --git a/clients/Tests/MAL-signatures-hge.test 
b/clients/Tests/MAL-signatures-hge.test
--- a/clients/Tests/MAL-signatures-hge.test
+++ b/clients/Tests/MAL-signatures-hge.test
@@ -29384,6 +29384,31 @@ pattern batcalc.not(X_0:bat[:sht], X_1:b
 CMDbatNOT;
 (empty)
 batcalc
+num_div
+pattern batcalc.num_div(X_0:bat[:bte], X_1:bat[:lng]):bat[:bte] 
+CMDbatDIV2;
+Return (V1+(V2-1)/2) / V2, nil on divide by zero
+batcalc
+num_div
+pattern batcalc.num_div(X_0:bat[:hge], X_1:bat[:lng]):bat[:hge] 
+CMDbatDIV2;
+Return (V1+(V2-1)/2) / V2, nil on divide by zero
+batcalc
+num_div
+pattern batcalc.num_div(X_0:bat[:int], X_1:bat[:lng]):bat[:int] 
+CMDbatDIV2;
+Return (V1+(V2-1)/2) / V2, nil on divide by zero
+batcalc
+num_div
+pattern batcalc.num_div(X_0:bat[:lng], X_1:bat[:lng]):bat[:lng] 
+CMDbatDIV2;
+Return (V1+(V2-1)/2) / V2, nil on divide by zero
+batcalc
+num_div
+pattern batcalc.num_div(X_0:bat[:sht], X_1:bat[:lng]):bat[:sht] 
+CMDbatDIV2;
+Return (V1+(V2-1)/2) / V2, nil on divide by zero
+batcalc
 oid
 pattern batcalc.oid(X_0:bat[:bit]):bat[:oid] 
 CMDconvertsignal_oid;
diff --git a/clients/Tests/MAL-signatures.test 
b/clients/Tests/MAL-signatures.test
--- a/clients/Tests/MAL-signatures.test
+++ b/clients/Tests/MAL-signatures.test
@@ -20724,6 +20724,26 @@ pattern batcalc.not(X_0:bat[:sht], X_1:b
 CMDbatNOT;
 (empty)
 batcalc
+num_div
+pattern batcalc.num_div(X_0:bat[:bte], X_1:bat[:lng]):bat[:bte] 
+CMDbatDIV2;
+Return (V1+(V2-1)/2) / V2, nil on divide by zero
+batcalc
+num_div
+pattern batcalc.num_div(X_0:bat[:int], X_1:bat[:lng]):bat[:int] 
+CMDbatDIV2;
+Return (V1+(V2-1)/2) / V2, nil on divide by zero
+batcalc
+num_div
+pattern batcalc.num_div(X_0:bat[:lng], X_1:bat[:lng]):bat[:lng] 
+CMDbatDIV2;
+Return (V1+(V2-1)/2) / V2, nil on divide by zero
+batcalc
+num_div
+pattern batcalc.num_div(X_0:bat[:sht], X_1:bat[:lng]):bat[:sht] 
+CMDbatDIV2;
+Return (V1+(V2-1)/2) / V2, nil on divide by zero
+batcalc
 oid
 pattern batcalc.oid(X_0:bat[:bit]):bat[:oid] 
 CMDconvertsignal_oid;
diff --git a/monetdb5/modules/mal/batcalc.c b/monetdb5/modules/mal/batcalc.c
--- a/monetdb5/modules/mal/batcalc.c
+++ b/monetdb5/modules/mal/batcalc.c
@@ -744,6 +744,43 @@ CMDbatDIVsignal(Client cntxt, MalBlkPtr 
                                                 calcdivtype, "batcalc./");
 }
 
+static BAT *
+BATcalcdiv2( BAT *b1, BAT *b2, BAT *s1, BAT *s2, int tp)
+{
+       ValRecord v1, v2;
+
+       v1.vtype = TYPE_lng;
+       v1.val.lval = 1;
+       v2.vtype = TYPE_lng;
+       v2.val.lval = 2;
+
+       assert(b2->ttype == TYPE_lng);
+       BAT *c_sub_1 = BATcalcsubcst(b2, &v1, s2, TYPE_lng);
+
+       if (!c_sub_1)
+               return NULL;
+       BAT *c_sub_1_div_2 = BATcalcdivcst(c_sub_1, &v2, NULL, TYPE_lng);
+       BBPreclaim(c_sub_1);
+       if (!c_sub_1_div_2)
+               return NULL;
+       BAT *num = BATcalcadd(b1, c_sub_1_div_2, s1, NULL, b1->ttype);
+       BBPreclaim(c_sub_1_div_2);
+       if (!num)
+               return NULL;
+       BAT *res = BATcalcdiv(num, b2, NULL, s1, tp);
+       BBPreclaim(num);
+       return res;
+}
+
+static str
+CMDbatDIV2(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr pci)
+{
+       (void) cntxt;
+
+       return CMDbatBINARY2(mb, stk, pci, BATcalcdiv2, NULL, NULL,
+                                                calcdivtype, "batcalc./");
+}
+
 static str
 CMDbatMODsignal(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr pci)
 {
@@ -1973,6 +2010,13 @@ static mel_func batcalc_init_funcs[] = {
  pattern("batcalc", "ifthenelse", CMDifthen, false, "If-then-else operation to 
assemble a conditional result", args(1,4, 
batargany("",1),batarg("b",bit),batargany("b1",1),argany("v2",1))),
  pattern("batcalc", "ifthenelse", CMDifthen, false, "If-then-else operation to 
assemble a conditional result", args(1,4, 
batargany("",1),batarg("b",bit),argany("v1",1),batargany("b2",1))),
  pattern("batcalc", "ifthenelse", CMDifthen, false, "If-then-else operation to 
assemble a conditional result", args(1,4, 
batargany("",1),batarg("b",bit),batargany("b1",1),batargany("b2",1))),
+#ifdef HAVE_HGE
+ pattern("batcalc", "num_div", CMDbatDIV2, false, "Return (V1+(V2-1)/2) / V2, 
nil on divide by zero", args(1,3, 
batarg("",hge),batarg("v1",hge),batarg("v2",lng))),
+#endif
+ pattern("batcalc", "num_div", CMDbatDIV2, false, "Return (V1+(V2-1)/2) / V2, 
nil on divide by zero", args(1,3, 
batarg("",lng),batarg("v1",lng),batarg("v2",lng))),
+ pattern("batcalc", "num_div", CMDbatDIV2, false, "Return (V1+(V2-1)/2) / V2, 
nil on divide by zero", args(1,3, 
batarg("",int),batarg("v1",int),batarg("v2",lng))),
+ pattern("batcalc", "num_div", CMDbatDIV2, false, "Return (V1+(V2-1)/2) / V2, 
nil on divide by zero", args(1,3, 
batarg("",sht),batarg("v1",sht),batarg("v2",lng))),
+ pattern("batcalc", "num_div", CMDbatDIV2, false, "Return (V1+(V2-1)/2) / V2, 
nil on divide by zero", args(1,3, 
batarg("",bte),batarg("v1",bte),batarg("v2",lng))),
 
  { .imp=NULL }
 
diff --git a/monetdb5/modules/mal/calc.c b/monetdb5/modules/mal/calc.c
--- a/monetdb5/modules/mal/calc.c
+++ b/monetdb5/modules/mal/calc.c
@@ -1117,7 +1117,9 @@ mel_func calc_init_funcs[] = {
  pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on 
overflow", args(1,3, arg("",hge),arg("v1",dbl),arg("v2",int))),
  pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on 
overflow", args(1,3, arg("",hge),arg("v1",dbl),arg("v2",lng))),
  pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on 
overflow", args(1,3, arg("",hge),arg("v1",dbl),arg("v2",hge))),
+#ifdef HAVE_HGE
  pattern("calc", "num_div", CMDvarDIV2, false, "Return (V1+(V2-1)/2) / V2, nil 
on divide by zero", args(1,3, arg("",hge),arg("v1",hge),arg("v2",lng))),
+#endif
  pattern("calc", "num_div", CMDvarDIV2, false, "Return (V1+(V2-1)/2) / V2, nil 
on divide by zero", args(1,3, arg("",lng),arg("v1",lng),arg("v2",lng))),
  pattern("calc", "num_div", CMDvarDIV2, false, "Return (V1+(V2-1)/2) / V2, nil 
on divide by zero", args(1,3, arg("",int),arg("v1",int),arg("v2",lng))),
  pattern("calc", "num_div", CMDvarDIV2, false, "Return (V1+(V2-1)/2) / V2, nil 
on divide by zero", args(1,3, arg("",sht),arg("v1",sht),arg("v2",lng))),
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
@@ -2023,7 +2023,6 @@ select 'null in fkeys.delete_action', de
 [ "sys.functions",     "sys",  "median",       "SYSTEM",       "create 
aggregate median(val timestamp) returns timestamp external name 
\"aggr\".\"median\";",  "aggr", "MAL",  "Aggregate function",   false,  false,  
false,  true,   NULL,   "result",       "timestamp",    7,      0,      "out",  
"val",  "timestamp",    7,      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,   NULL,   NULL,   NULL,   NULL,   NULL    ]
 [ "sys.functions",     "sys",  "median",       "SYSTEM",       "create 
aggregate median(val tinyint) returns tinyint external name 
\"aggr\".\"median\";",      "aggr", "MAL",  "Aggregate function",   false,  
false,  false,  true,   NULL,   "result",       "tinyint",      8,      0,      
"out",  "val",  "tinyint",      8,      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,   NULL,   NULL,   NULL,   NULL,   NULL    ]
 [ "sys.functions",     "sys",  "median_avg",   "SYSTEM",       "create 
aggregate median_avg(val bigint) returns double external name 
\"aggr\".\"median_avg\";",        "aggr", "MAL",  "Aggregate function",   
false,  false,  false,  true,   NULL,   "result",       "double",       53,     
0,      "out",  "val",  "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,   NULL,   NULL,   NULL,   NULL,   NULL    ]
-[ "sys.functions",     "sys",  "median_avg",   "SYSTEM",       "create 
aggregate median_avg(val decimal) returns double external name 
\"aggr\".\"median_avg\";",       "aggr", "MAL",  "Aggregate function",   false, 
 false,  false,  true,   NULL,   "result",       "double",       53,     0,     
 "out",  "val",  "decimal",      18,     3,      "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,   NULL,   NULL,   NULL,   NULL,   NULL    ]
 [ "sys.functions",     "sys",  "median_avg",   "SYSTEM",       "create 
aggregate median_avg(val double) returns double external name 
\"aggr\".\"median_avg\";",        "aggr", "MAL",  "Aggregate function",   
false,  false,  false,  true,   NULL,   "result",       "double",       53,     
0,      "out",  "val",  "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,   NULL,   NULL,   NULL,   NULL,   NULL    ]
 [ "sys.functions",     "sys",  "median_avg",   "SYSTEM",       "create 
aggregate median_avg(val integer) returns double external name 
\"aggr\".\"median_avg\";",       "aggr", "MAL",  "Aggregate function",   false, 
 false,  false,  true,   NULL,   "result",       "double",       53,     0,     
 "out",  "val",  "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,   NULL,   NULL,   NULL,   NULL,  
 NULL,   NULL,   NULL,   NULL,   NULL,   NULL    ]
 [ "sys.functions",     "sys",  "median_avg",   "SYSTEM",       "create 
aggregate median_avg(val real) returns double external name 
\"aggr\".\"median_avg\";",  "aggr", "MAL",  "Aggregate function",   false,  
false,  false,  true,   NULL,   "result",       "double",       53,     0,      
"out",  "val",  "real", 24,     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,   NULL,   NULL,   NULL,   NULL,   NULL    ]
@@ -2074,6 +2073,10 @@ select 'null in fkeys.delete_action', de
 [ "sys.functions",     "sys",  "ntile",        "SYSTEM",       "ntile",        
"sql",  "Internal C",   "Analytic function",    false,  false,  false,  true,   
NULL,   "res_0",        "int",  32,     0,      "out",  "arg_1",        "any",  
0,      0,      "in",   "arg_2",        "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,   NULL,   
NULL,   NULL,   NULL,   NULL    ]
 [ "sys.functions",     "sys",  "ntile",        "SYSTEM",       "ntile",        
"sql",  "Internal C",   "Analytic function",    false,  false,  false,  true,   
NULL,   "res_0",        "smallint",     16,     0,      "out",  "arg_1",        
"any",  0,      0,      "in",   "arg_2",        "smallint",     16,     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.functions",     "sys",  "ntile",        "SYSTEM",       "ntile",        
"sql",  "Internal C",   "Analytic function",    false,  false,  false,  true,   
NULL,   "res_0",        "tinyint",      8,      0,      "out",  "arg_1",        
"any",  0,      0,      "in",   "arg_2",        "tinyint",      8,      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.functions",     "sys",  "num_div",      "SYSTEM",       "num_div",      
"calc", "Internal C",   "Scalar function",      false,  false,  false,  false,  
NULL,   "res_0",        "decimal",      4,      0,      "out",  "arg_1",        
"decimal",      4,      0,      "in",   "arg_2",        "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.functions",     "sys",  "num_div",      "SYSTEM",       "num_div",      
"calc", "Internal C",   "Scalar function",      false,  false,  false,  false,  
NULL,   "res_0",        "decimal",      9,      0,      "out",  "arg_1",        
"decimal",      9,      0,      "in",   "arg_2",        "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.functions",     "sys",  "num_div",      "SYSTEM",       "num_div",      
"calc", "Internal C",   "Scalar function",      false,  false,  false,  false,  
NULL,   "res_0",        "decimal",      18,     0,      "out",  "arg_1",        
"decimal",      18,     0,      "in",   "arg_2",        "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.functions",     "sys",  "num_div",      "SYSTEM",       "num_div",      
"calc", "Internal C",   "Scalar function",      false,  false,  false,  false,  
NULL,   "res_0",        "decimal",      38,     0,      "out",  "arg_1",        
"decimal",      38,     0,      "in",   "arg_2",        "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.functions",     "sys",  "octet_length", "SYSTEM",       "nbytes",       
"str",  "Internal C",   "Scalar function",      false,  false,  false,  false,  
NULL,   "res_0",        "int",  32,     0,      "out",  "arg_1",        "char", 
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,   NULL,   NULL,   
NULL,   NULL,   NULL    ]
 [ "sys.functions",     "sys",  "octet_length", "SYSTEM",       "nbytes",       
"str",  "Internal C",   "Scalar function",      false,  false,  false,  false,  
NULL,   "res_0",        "int",  32,     0,      "out",  "arg_1",        "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,   NULL,   NULL,   
NULL,   NULL,   NULL    ]
 [ "sys.functions",     "sys",  "octet_length", "SYSTEM",       "nbytes",       
"str",  "Internal C",   "Scalar function",      false,  false,  false,  false,  
NULL,   "res_0",        "int",  32,     0,      "out",  "arg_1",        
"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,   
NULL,   NULL,   NULL,   NULL,   NULL    ]
@@ -4689,7 +4692,6 @@ select 'null in fkeys.delete_action', de
 [ "grant on function", "sys",  "median_avg",   "public",       "EXECUTE",      
"monetdb",      0       ]
 [ "grant on function", "sys",  "median_avg",   "public",       "EXECUTE",      
"monetdb",      0       ]
 [ "grant on function", "sys",  "median_avg",   "public",       "EXECUTE",      
"monetdb",      0       ]
-[ "grant on function", "sys",  "median_avg",   "public",       "EXECUTE",      
"monetdb",      0       ]
 [ "grant on function", "sys",  "minjarowinkler",       "public",       
"EXECUTE",      "monetdb",      0       ]
 [ "grant on function", "sys",  "ms_round",     "public",       "EXECUTE",      
"monetdb",      0       ]
 [ "grant on function", "sys",  "ms_str",       "public",       "EXECUTE",      
"monetdb",      0       ]
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
@@ -1976,7 +1976,6 @@ select 'null in fkeys.delete_action', de
 [ "sys.functions",     "sys",  "median",       "SYSTEM",       "create 
aggregate median(val timestamp) returns timestamp external name 
\"aggr\".\"median\";",  "aggr", "MAL",  "Aggregate function",   false,  false,  
false,  true,   NULL,   "result",       "timestamp",    7,      0,      "out",  
"val",  "timestamp",    7,      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,   NULL,   NULL,   NULL,   NULL,   NULL    ]
 [ "sys.functions",     "sys",  "median",       "SYSTEM",       "create 
aggregate median(val tinyint) returns tinyint external name 
\"aggr\".\"median\";",      "aggr", "MAL",  "Aggregate function",   false,  
false,  false,  true,   NULL,   "result",       "tinyint",      8,      0,      
"out",  "val",  "tinyint",      8,      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,   NULL,   NULL,   NULL,   NULL,   NULL    ]
 [ "sys.functions",     "sys",  "median_avg",   "SYSTEM",       "create 
aggregate median_avg(val bigint) returns double external name 
\"aggr\".\"median_avg\";",        "aggr", "MAL",  "Aggregate function",   
false,  false,  false,  true,   NULL,   "result",       "double",       53,     
0,      "out",  "val",  "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,   NULL,   NULL,   NULL,   NULL,   NULL    ]
-[ "sys.functions",     "sys",  "median_avg",   "SYSTEM",       "create 
aggregate median_avg(val decimal) returns double external name 
\"aggr\".\"median_avg\";",       "aggr", "MAL",  "Aggregate function",   false, 
 false,  false,  true,   NULL,   "result",       "double",       53,     0,     
 "out",  "val",  "decimal",      18,     3,      "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,   NULL,   NULL,   NULL,   NULL,   NULL    ]
 [ "sys.functions",     "sys",  "median_avg",   "SYSTEM",       "create 
aggregate median_avg(val double) returns double external name 
\"aggr\".\"median_avg\";",        "aggr", "MAL",  "Aggregate function",   
false,  false,  false,  true,   NULL,   "result",       "double",       53,     
0,      "out",  "val",  "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,   NULL,   NULL,   NULL,   NULL,   NULL    ]
 [ "sys.functions",     "sys",  "median_avg",   "SYSTEM",       "create 
aggregate median_avg(val integer) returns double external name 
\"aggr\".\"median_avg\";",       "aggr", "MAL",  "Aggregate function",   false, 
 false,  false,  true,   NULL,   "result",       "double",       53,     0,     
 "out",  "val",  "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,   NULL,   NULL,   NULL,   NULL,  
 NULL,   NULL,   NULL,   NULL,   NULL,   NULL    ]
 [ "sys.functions",     "sys",  "median_avg",   "SYSTEM",       "create 
aggregate median_avg(val real) returns double external name 
\"aggr\".\"median_avg\";",  "aggr", "MAL",  "Aggregate function",   false,  
false,  false,  true,   NULL,   "result",       "double",       53,     0,      
"out",  "val",  "real", 24,     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,   NULL,   NULL,   NULL,   NULL,   NULL    ]
@@ -2027,6 +2026,10 @@ select 'null in fkeys.delete_action', de
 [ "sys.functions",     "sys",  "ntile",        "SYSTEM",       "ntile",        
"sql",  "Internal C",   "Analytic function",    false,  false,  false,  true,   
NULL,   "res_0",        "int",  32,     0,      "out",  "arg_1",        "any",  
0,      0,      "in",   "arg_2",        "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,   NULL,   
NULL,   NULL,   NULL,   NULL    ]
 [ "sys.functions",     "sys",  "ntile",        "SYSTEM",       "ntile",        
"sql",  "Internal C",   "Analytic function",    false,  false,  false,  true,   
NULL,   "res_0",        "smallint",     16,     0,      "out",  "arg_1",        
"any",  0,      0,      "in",   "arg_2",        "smallint",     16,     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.functions",     "sys",  "ntile",        "SYSTEM",       "ntile",        
"sql",  "Internal C",   "Analytic function",    false,  false,  false,  true,   
NULL,   "res_0",        "tinyint",      8,      0,      "out",  "arg_1",        
"any",  0,      0,      "in",   "arg_2",        "tinyint",      8,      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.functions",     "sys",  "num_div",      "SYSTEM",       "num_div",      
"calc", "Internal C",   "Scalar function",      false,  false,  false,  false,  
NULL,   "res_0",        "decimal",      4,      0,      "out",  "arg_1",        
"decimal",      4,      0,      "in",   "arg_2",        "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.functions",     "sys",  "num_div",      "SYSTEM",       "num_div",      
"calc", "Internal C",   "Scalar function",      false,  false,  false,  false,  
NULL,   "res_0",        "decimal",      9,      0,      "out",  "arg_1",        
"decimal",      9,      0,      "in",   "arg_2",        "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.functions",     "sys",  "num_div",      "SYSTEM",       "num_div",      
"calc", "Internal C",   "Scalar function",      false,  false,  false,  false,  
NULL,   "res_0",        "decimal",      18,     0,      "out",  "arg_1",        
"decimal",      18,     0,      "in",   "arg_2",        "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.functions",     "sys",  "num_div",      "SYSTEM",       "num_div",      
"calc", "Internal C",   "Scalar function",      false,  false,  false,  false,  
NULL,   "res_0",        "decimal",      38,     0,      "out",  "arg_1",        
"decimal",      38,     0,      "in",   "arg_2",        "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.functions",     "sys",  "octet_length", "SYSTEM",       "nbytes",       
"str",  "Internal C",   "Scalar function",      false,  false,  false,  false,  
NULL,   "res_0",        "int",  32,     0,      "out",  "arg_1",        "char", 
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,   NULL,   NULL,   
NULL,   NULL,   NULL    ]
 [ "sys.functions",     "sys",  "octet_length", "SYSTEM",       "nbytes",       
"str",  "Internal C",   "Scalar function",      false,  false,  false,  false,  
NULL,   "res_0",        "int",  32,     0,      "out",  "arg_1",        "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,   NULL,   NULL,   
NULL,   NULL,   NULL    ]
 [ "sys.functions",     "sys",  "octet_length", "SYSTEM",       "nbytes",       
"str",  "Internal C",   "Scalar function",      false,  false,  false,  false,  
NULL,   "res_0",        "int",  32,     0,      "out",  "arg_1",        
"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,   
NULL,   NULL,   NULL,   NULL,   NULL    ]
diff --git a/sql/test/emptydb/Tests/check.stable.out.int128 
b/sql/test/emptydb/Tests/check.stable.out.int128
--- a/sql/test/emptydb/Tests/check.stable.out.int128
+++ b/sql/test/emptydb/Tests/check.stable.out.int128
@@ -2048,7 +2048,6 @@ select 'null in fkeys.delete_action', de
 [ "sys.functions",     "sys",  "median",       "SYSTEM",       "create 
aggregate median(val timestamp) returns timestamp external name 
\"aggr\".\"median\";",  "aggr", "MAL",  "Aggregate function",   false,  false,  
false,  true,   NULL,   "result",       "timestamp",    7,      0,      "out",  
"val",  "timestamp",    7,      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,   NULL,   NULL,   NULL,   NULL,   NULL    ]
 [ "sys.functions",     "sys",  "median",       "SYSTEM",       "create 
aggregate median(val tinyint) returns tinyint external name 
\"aggr\".\"median\";",      "aggr", "MAL",  "Aggregate function",   false,  
false,  false,  true,   NULL,   "result",       "tinyint",      8,      0,      
"out",  "val",  "tinyint",      8,      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,   NULL,   NULL,   NULL,   NULL,   NULL    ]
 [ "sys.functions",     "sys",  "median_avg",   "SYSTEM",       "create 
aggregate median_avg(val bigint) returns double external name 
\"aggr\".\"median_avg\";",        "aggr", "MAL",  "Aggregate function",   
false,  false,  false,  true,   NULL,   "result",       "double",       53,     
0,      "out",  "val",  "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,   NULL,   NULL,   NULL,   NULL,   NULL    ]
-[ "sys.functions",     "sys",  "median_avg",   "SYSTEM",       "create 
aggregate median_avg(val decimal) returns double external name 
\"aggr\".\"median_avg\";",       "aggr", "MAL",  "Aggregate function",   false, 
 false,  false,  true,   NULL,   "result",       "double",       53,     0,     
 "out",  "val",  "decimal",      18,     3,      "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,   NULL,   NULL,   NULL,   NULL,   NULL    ]
 [ "sys.functions",     "sys",  "median_avg",   "SYSTEM",       "create 
aggregate median_avg(val double) returns double external name 
\"aggr\".\"median_avg\";",        "aggr", "MAL",  "Aggregate function",   
false,  false,  false,  true,   NULL,   "result",       "double",       53,     
0,      "out",  "val",  "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,   NULL,   NULL,   NULL,   NULL,   NULL    ]
 [ "sys.functions",     "sys",  "median_avg",   "SYSTEM",       "create 
aggregate median_avg(val hugeint) returns double external name 
\"aggr\".\"median_avg\";",       "aggr", "MAL",  "Aggregate function",   false, 
 false,  false,  true,   NULL,   "result",       "double",       53,     0,     
 "out",  "val",  "hugeint",      128,    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,   NULL,   NULL,   NULL,   NULL,   NULL    ]
 [ "sys.functions",     "sys",  "median_avg",   "SYSTEM",       "create 
aggregate median_avg(val integer) returns double external name 
\"aggr\".\"median_avg\";",       "aggr", "MAL",  "Aggregate function",   false, 
 false,  false,  true,   NULL,   "result",       "double",       53,     0,     
 "out",  "val",  "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,   NULL,   NULL,   NULL,   NULL,  
 NULL,   NULL,   NULL,   NULL,   NULL,   NULL    ]
@@ -2103,6 +2102,10 @@ select 'null in fkeys.delete_action', de
 [ "sys.functions",     "sys",  "ntile",        "SYSTEM",       "ntile",        
"sql",  "Internal C",   "Analytic function",    false,  false,  false,  true,   
NULL,   "res_0",        "int",  32,     0,      "out",  "arg_1",        "any",  
0,      0,      "in",   "arg_2",        "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,   NULL,   
NULL,   NULL,   NULL,   NULL    ]
 [ "sys.functions",     "sys",  "ntile",        "SYSTEM",       "ntile",        
"sql",  "Internal C",   "Analytic function",    false,  false,  false,  true,   
NULL,   "res_0",        "smallint",     16,     0,      "out",  "arg_1",        
"any",  0,      0,      "in",   "arg_2",        "smallint",     16,     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.functions",     "sys",  "ntile",        "SYSTEM",       "ntile",        
"sql",  "Internal C",   "Analytic function",    false,  false,  false,  true,   
NULL,   "res_0",        "tinyint",      8,      0,      "out",  "arg_1",        
"any",  0,      0,      "in",   "arg_2",        "tinyint",      8,      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.functions",     "sys",  "num_div",      "SYSTEM",       "num_div",      
"calc", "Internal C",   "Scalar function",      false,  false,  false,  false,  
NULL,   "res_0",        "decimal",      4,      0,      "out",  "arg_1",        
"decimal",      4,      0,      "in",   "arg_2",        "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.functions",     "sys",  "num_div",      "SYSTEM",       "num_div",      
"calc", "Internal C",   "Scalar function",      false,  false,  false,  false,  
NULL,   "res_0",        "decimal",      9,      0,      "out",  "arg_1",        
"decimal",      9,      0,      "in",   "arg_2",        "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.functions",     "sys",  "num_div",      "SYSTEM",       "num_div",      
"calc", "Internal C",   "Scalar function",      false,  false,  false,  false,  
NULL,   "res_0",        "decimal",      18,     0,      "out",  "arg_1",        
"decimal",      18,     0,      "in",   "arg_2",        "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.functions",     "sys",  "num_div",      "SYSTEM",       "num_div",      
"calc", "Internal C",   "Scalar function",      false,  false,  false,  false,  
NULL,   "res_0",        "decimal",      38,     0,      "out",  "arg_1",        
"decimal",      38,     0,      "in",   "arg_2",        "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.functions",     "sys",  "octet_length", "SYSTEM",       "nbytes",       
"str",  "Internal C",   "Scalar function",      false,  false,  false,  false,  
NULL,   "res_0",        "int",  32,     0,      "out",  "arg_1",        "char", 
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,   NULL,   NULL,   
NULL,   NULL,   NULL    ]
 [ "sys.functions",     "sys",  "octet_length", "SYSTEM",       "nbytes",       
"str",  "Internal C",   "Scalar function",      false,  false,  false,  false,  
NULL,   "res_0",        "int",  32,     0,      "out",  "arg_1",        "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,   NULL,   NULL,   
NULL,   NULL,   NULL    ]
 [ "sys.functions",     "sys",  "octet_length", "SYSTEM",       "nbytes",       
"str",  "Internal C",   "Scalar function",      false,  false,  false,  false,  
NULL,   "res_0",        "int",  32,     0,      "out",  "arg_1",        
"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,   
NULL,   NULL,   NULL,   NULL,   NULL    ]
@@ -4810,7 +4813,6 @@ select 'null in fkeys.delete_action', de
 [ "grant on function", "sys",  "median_avg",   "public",       "EXECUTE",      
"monetdb",      0       ]
 [ "grant on function", "sys",  "median_avg",   "public",       "EXECUTE",      
"monetdb",      0       ]
 [ "grant on function", "sys",  "median_avg",   "public",       "EXECUTE",      
"monetdb",      0       ]
-[ "grant on function", "sys",  "median_avg",   "public",       "EXECUTE",      
"monetdb",      0       ]
 [ "grant on function", "sys",  "minjarowinkler",       "public",       
"EXECUTE",      "monetdb",      0       ]
 [ "grant on function", "sys",  "ms_round",     "public",       "EXECUTE",      
"monetdb",      0       ]
 [ "grant on function", "sys",  "ms_str",       "public",       "EXECUTE",      
"monetdb",      0       ]
_______________________________________________
checkin-list mailing list -- checkin-list@monetdb.org
To unsubscribe send an email to checkin-list-le...@monetdb.org

Reply via email to