Changeset: 55c8ae35c4c2 for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=55c8ae35c4c2
Modified Files:
clients/Tests/MAL-signatures.stable.out
clients/Tests/MAL-signatures.stable.out.int128
sql/common/sql_types.c
sql/test/sys-schema/Tests/systemfunctions.stable.out
sql/test/sys-schema/Tests/systemfunctions.stable.out.int128
Branch: typing
Log Message:
Added 'abs' and 'sign' back on intervals
diffs (125 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
@@ -5442,9 +5442,9 @@ stdout of test 'MAL-signatures` in direc
[ "batmtime", "dayofyear", "command
batmtime.dayofyear(X_1:bat[:date]):bat[:int] ",
"MTIMEdate_extract_dayofyear_bulk;", "" ]
[ "batmtime", "decade", "command
batmtime.decade(X_1:bat[:date]):bat[:int] ",
"MTIMEdate_extract_decade_bulk;", "" ]
[ "batmtime", "decade", "command
batmtime.decade(X_1:bat[:timestamp]):bat[:int] ",
"MTIMEtimestamp_decade_bulk;", "" ]
-[ "batmtime", "diff", "command batmtime.diff(X_1:bat[:date],
X_2:bat[:date]):bat[:int] ", "MTIMEdate_diff_bulk;", "" ]
-[ "batmtime", "diff", "command batmtime.diff(X_1:date,
X_2:bat[:date]):bat[:int] ", "MTIMEdate_diff_bulk_p1;", "" ]
-[ "batmtime", "diff", "command batmtime.diff(X_1:bat[:date],
X_2:date):bat[:int] ", "MTIMEdate_diff_bulk_p2;", "" ]
+[ "batmtime", "diff", "command batmtime.diff(X_1:bat[:date],
X_2:bat[:date]):bat[:lng] ", "MTIMEdate_diff_bulk;", "" ]
+[ "batmtime", "diff", "command batmtime.diff(X_1:date,
X_2:bat[:date]):bat[:lng] ", "MTIMEdate_diff_bulk_p1;", "" ]
+[ "batmtime", "diff", "command batmtime.diff(X_1:bat[:date],
X_2:date):bat[:lng] ", "MTIMEdate_diff_bulk_p2;", "" ]
[ "batmtime", "diff", "command batmtime.diff(X_1:bat[:daytime],
X_2:bat[:daytime]):bat[:lng] ", "MTIMEdaytime_diff_msec_bulk;", "" ]
[ "batmtime", "diff", "command batmtime.diff(X_1:daytime,
X_2:bat[:daytime]):bat[:lng] ", "MTIMEdaytime_diff_msec_bulk_p1;", ""
]
[ "batmtime", "diff", "command batmtime.diff(X_1:bat[:daytime],
X_2:daytime):bat[:lng] ", "MTIMEdaytime_diff_msec_bulk_p2;", "" ]
@@ -8038,7 +8038,7 @@ stdout of test 'MAL-signatures` in direc
[ "mtime", "dayofyear", "command mtime.dayofyear(X_1:date):int ",
"MTIMEdate_extract_dayofyear;", "" ]
[ "mtime", "decade", "command mtime.decade(X_1:date):int ",
"MTIMEdate_extract_decade;", "" ]
[ "mtime", "decade", "command mtime.decade(X_1:timestamp):int ",
"MTIMEtimestamp_decade;", "" ]
-[ "mtime", "diff", "command mtime.diff(X_1:date, X_2:date):int ",
"MTIMEdate_diff;", "" ]
+[ "mtime", "diff", "command mtime.diff(X_1:date, X_2:date):lng ",
"MTIMEdate_diff;", "" ]
[ "mtime", "diff", "command mtime.diff(X_1:daytime, X_2:daytime):lng ",
"MTIMEdaytime_diff_msec;", "" ]
[ "mtime", "diff", "command mtime.diff(X_1:timestamp, X_2:timestamp):lng
", "MTIMEtimestamp_diff_msec;", "" ]
[ "mtime", "epoch", "command mtime.epoch(X_1:timestamp):int ",
"MTIMEseconds_since_epoch;", "" ]
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
@@ -7642,9 +7642,9 @@ stdout of test 'MAL-signatures` in direc
[ "batmtime", "dayofyear", "command
batmtime.dayofyear(X_1:bat[:date]):bat[:int] ",
"MTIMEdate_extract_dayofyear_bulk;", "" ]
[ "batmtime", "decade", "command
batmtime.decade(X_1:bat[:date]):bat[:int] ",
"MTIMEdate_extract_decade_bulk;", "" ]
[ "batmtime", "decade", "command
batmtime.decade(X_1:bat[:timestamp]):bat[:int] ",
"MTIMEtimestamp_decade_bulk;", "" ]
-[ "batmtime", "diff", "command batmtime.diff(X_1:bat[:date],
X_2:bat[:date]):bat[:int] ", "MTIMEdate_diff_bulk;", "" ]
-[ "batmtime", "diff", "command batmtime.diff(X_1:date,
X_2:bat[:date]):bat[:int] ", "MTIMEdate_diff_bulk_p1;", "" ]
-[ "batmtime", "diff", "command batmtime.diff(X_1:bat[:date],
X_2:date):bat[:int] ", "MTIMEdate_diff_bulk_p2;", "" ]
+[ "batmtime", "diff", "command batmtime.diff(X_1:bat[:date],
X_2:bat[:date]):bat[:lng] ", "MTIMEdate_diff_bulk;", "" ]
+[ "batmtime", "diff", "command batmtime.diff(X_1:date,
X_2:bat[:date]):bat[:lng] ", "MTIMEdate_diff_bulk_p1;", "" ]
+[ "batmtime", "diff", "command batmtime.diff(X_1:bat[:date],
X_2:date):bat[:lng] ", "MTIMEdate_diff_bulk_p2;", "" ]
[ "batmtime", "diff", "command batmtime.diff(X_1:bat[:daytime],
X_2:bat[:daytime]):bat[:lng] ", "MTIMEdaytime_diff_msec_bulk;", "" ]
[ "batmtime", "diff", "command batmtime.diff(X_1:daytime,
X_2:bat[:daytime]):bat[:lng] ", "MTIMEdaytime_diff_msec_bulk_p1;", ""
]
[ "batmtime", "diff", "command batmtime.diff(X_1:bat[:daytime],
X_2:daytime):bat[:lng] ", "MTIMEdaytime_diff_msec_bulk_p2;", "" ]
@@ -10934,7 +10934,7 @@ stdout of test 'MAL-signatures` in direc
[ "mtime", "dayofyear", "command mtime.dayofyear(X_1:date):int ",
"MTIMEdate_extract_dayofyear;", "" ]
[ "mtime", "decade", "command mtime.decade(X_1:date):int ",
"MTIMEdate_extract_decade;", "" ]
[ "mtime", "decade", "command mtime.decade(X_1:timestamp):int ",
"MTIMEtimestamp_decade;", "" ]
-[ "mtime", "diff", "command mtime.diff(X_1:date, X_2:date):int ",
"MTIMEdate_diff;", "" ]
+[ "mtime", "diff", "command mtime.diff(X_1:date, X_2:date):lng ",
"MTIMEdate_diff;", "" ]
[ "mtime", "diff", "command mtime.diff(X_1:daytime, X_2:daytime):lng ",
"MTIMEdaytime_diff_msec;", "" ]
[ "mtime", "diff", "command mtime.diff(X_1:timestamp, X_2:timestamp):lng
", "MTIMEtimestamp_diff_msec;", "" ]
[ "mtime", "epoch", "command mtime.epoch(X_1:timestamp):int ",
"MTIMEseconds_since_epoch;", "" ]
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
@@ -1597,10 +1597,13 @@ sqltypeinit( sql_allocator *sa)
sql_create_func(sa, "xor", "calc", "xor", FALSE, FALSE, SCALE_FIX, 0,
BIT, 2, BIT, BIT);
sql_create_func(sa, "not", "calc", "not", FALSE, FALSE, SCALE_FIX, 0,
BIT, 1, BIT);
+ /* functions for interval types */
for (t = dates; *t != TME; t++) {
sql_create_func(sa, "sql_sub", "calc", "-", FALSE, FALSE,
SCALE_FIX, 0, *t, 2, *t, *t);
sql_create_func(sa, "sql_add", "calc", "+", FALSE, FALSE,
SCALE_FIX, 0, *t, 2, *t, *t);
sql_create_func(sa, "sql_neg", "calc", "-", TRUE, FALSE, INOUT,
0, *t, 1, *t);
+ sql_create_func(sa, "abs", "calc", "abs", FALSE, FALSE,
SCALE_FIX, 0, *t, 1, *t);
+ sql_create_func(sa, "sign", "calc", "sign", FALSE, FALSE,
SCALE_NONE, 0, BTE, 1, *t);
}
/* allow smaller types for arguments of mul/div */
diff --git a/sql/test/sys-schema/Tests/systemfunctions.stable.out
b/sql/test/sys-schema/Tests/systemfunctions.stable.out
--- a/sql/test/sys-schema/Tests/systemfunctions.stable.out
+++ b/sql/test/sys-schema/Tests/systemfunctions.stable.out
@@ -106,6 +106,12 @@ stdout of test 'systemfunctions` in dire
[ "sys", ">=", 2, "any", "" ]
[ "sys", "abbrev", 0, "clob", "create function \"abbrev\" (p
inet) returns clob\nexternal name inet.\"abbrev\";" ]
[ "sys", "abbrev", 1, "inet", "" ]
+[ "sys", "abs", 0, "month_interval", "abs" ]
+[ "sys", "abs", 1, "month_interval", "" ]
+[ "sys", "abs", 0, "day_interval", "abs" ]
+[ "sys", "abs", 1, "day_interval", "" ]
+[ "sys", "abs", 0, "sec_interval", "abs" ]
+[ "sys", "abs", 1, "sec_interval", "" ]
[ "sys", "abs", 0, "oid", "abs" ]
[ "sys", "abs", 1, "oid", "" ]
[ "sys", "abs", 0, "tinyint", "abs" ]
@@ -3614,6 +3620,12 @@ stdout of test 'systemfunctions` in dire
[ "sys", "shutdown", 0, "tinyint", "create procedure
sys.shutdown(delay tinyint, force bool)\nexternal name sql.shutdown;" ]
[ "sys", "shutdown", 1, "boolean", "" ]
[ "sys", "sign", 0, "tinyint", "sign" ]
+[ "sys", "sign", 1, "month_interval", "" ]
+[ "sys", "sign", 0, "tinyint", "sign" ]
+[ "sys", "sign", 1, "day_interval", "" ]
+[ "sys", "sign", 0, "tinyint", "sign" ]
+[ "sys", "sign", 1, "sec_interval", "" ]
+[ "sys", "sign", 0, "tinyint", "sign" ]
[ "sys", "sign", 1, "oid", "" ]
[ "sys", "sign", 0, "tinyint", "sign" ]
[ "sys", "sign", 1, "tinyint", "" ]
diff --git a/sql/test/sys-schema/Tests/systemfunctions.stable.out.int128
b/sql/test/sys-schema/Tests/systemfunctions.stable.out.int128
--- a/sql/test/sys-schema/Tests/systemfunctions.stable.out.int128
+++ b/sql/test/sys-schema/Tests/systemfunctions.stable.out.int128
@@ -109,6 +109,12 @@ stdout of test 'systemfunctions` in dire
[ "sys", ">=", 2, "any", "" ]
[ "sys", "abbrev", 0, "clob", "create function \"abbrev\" (p
inet) returns clob\nexternal name inet.\"abbrev\";" ]
[ "sys", "abbrev", 1, "inet", "" ]
+[ "sys", "abs", 0, "month_interval", "abs" ]
+[ "sys", "abs", 1, "month_interval", "" ]
+[ "sys", "abs", 0, "day_interval", "abs" ]
+[ "sys", "abs", 1, "day_interval", "" ]
+[ "sys", "abs", 0, "sec_interval", "abs" ]
+[ "sys", "abs", 1, "sec_interval", "" ]
[ "sys", "abs", 0, "oid", "abs" ]
[ "sys", "abs", 1, "oid", "" ]
[ "sys", "abs", 0, "tinyint", "abs" ]
@@ -4046,6 +4052,12 @@ stdout of test 'systemfunctions` in dire
[ "sys", "shutdown", 0, "tinyint", "create procedure
sys.shutdown(delay tinyint, force bool)\nexternal name sql.shutdown;" ]
[ "sys", "shutdown", 1, "boolean", "" ]
[ "sys", "sign", 0, "tinyint", "sign" ]
+[ "sys", "sign", 1, "month_interval", "" ]
+[ "sys", "sign", 0, "tinyint", "sign" ]
+[ "sys", "sign", 1, "day_interval", "" ]
+[ "sys", "sign", 0, "tinyint", "sign" ]
+[ "sys", "sign", 1, "sec_interval", "" ]
+[ "sys", "sign", 0, "tinyint", "sign" ]
[ "sys", "sign", 1, "oid", "" ]
[ "sys", "sign", 0, "tinyint", "sign" ]
[ "sys", "sign", 1, "tinyint", "" ]
_______________________________________________
checkin-list mailing list
[email protected]
https://www.monetdb.org/mailman/listinfo/checkin-list