Changeset: fcf58a9220d4 for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB/rev/fcf58a9220d4
Modified Files:
sql/backends/monet5/sql_upgrades.c
sql/test/emptydb-previous-upgrade-chain-hge/Tests/upgrade.stable.out.int128
sql/test/emptydb-previous-upgrade-chain/Tests/upgrade.stable.out
sql/test/emptydb-previous-upgrade-chain/Tests/upgrade.stable.out.int128
sql/test/emptydb-previous-upgrade-hge/Tests/upgrade.stable.out.int128
sql/test/emptydb-previous-upgrade/Tests/upgrade.stable.out
sql/test/emptydb-previous-upgrade/Tests/upgrade.stable.out.int128
sql/test/emptydb-upgrade-chain-hge/Tests/upgrade.stable.out.int128
sql/test/emptydb-upgrade-chain/Tests/upgrade.stable.out
sql/test/emptydb-upgrade-chain/Tests/upgrade.stable.out.int128
sql/test/emptydb-upgrade-chain/Tests/upgrade.stable.out.ppc64.int128
sql/test/emptydb-upgrade-hge/Tests/upgrade.stable.out.int128
sql/test/emptydb-upgrade/Tests/upgrade.stable.out
sql/test/emptydb-upgrade/Tests/upgrade.stable.out.int128
sql/test/testdb-previous-upgrade-chain-hge/Tests/upgrade.stable.out.int128
sql/test/testdb-previous-upgrade-chain/Tests/upgrade.stable.out
sql/test/testdb-previous-upgrade-chain/Tests/upgrade.stable.out.int128
sql/test/testdb-previous-upgrade-hge/Tests/upgrade.stable.out.int128
sql/test/testdb-previous-upgrade/Tests/upgrade.stable.out
sql/test/testdb-previous-upgrade/Tests/upgrade.stable.out.int128
sql/test/testdb-upgrade-chain-hge/Tests/upgrade.stable.out.int128
sql/test/testdb-upgrade-chain/Tests/upgrade.stable.out
sql/test/testdb-upgrade-chain/Tests/upgrade.stable.out.int128
sql/test/testdb-upgrade-hge/Tests/upgrade.stable.out.int128
sql/test/testdb-upgrade/Tests/upgrade.stable.out
sql/test/testdb-upgrade/Tests/upgrade.stable.out.int128
Branch: Jun2023
Log Message:
Recreate older functions in upgrade code + approve output.
diffs (truncated from 2076 to 300 lines):
diff --git a/sql/backends/monet5/sql_upgrades.c
b/sql/backends/monet5/sql_upgrades.c
--- a/sql/backends/monet5/sql_upgrades.c
+++ b/sql/backends/monet5/sql_upgrades.c
@@ -5515,9 +5515,15 @@ sql_update_jun2023(Client c, mvc *sql, s
sql->session->status = 0; /* if the function was not found
clean the error */
sql->errstr[0] = '\0';
pos = snprintf(buf, bufsize,
+ "create function sys.levenshtein(x
string, y string)\n"
+ "returns int external name
txtsim.levenshtein;\n"
+ "grant execute on function
levenshtein(string, string) to public;\n"
"create function sys.levenshtein(x
string, y string, insdel int, rep int)\n"
"returns int external name
txtsim.levenshtein;\n"
"grant execute on function
levenshtein(string, string, int, int) to public;\n"
+ "create function sys.levenshtein(x
string, y string, insdel int, rep int, trans int)\n"
+ "returns int external name
txtsim.levenshtein;\n"
+ "grant execute on function
levenshtein(string, string, int, int, int) to public;\n"
"create filter function
sys.maxlevenshtein(x string, y string, k int)\n"
"external name
txtsim.maxlevenshtein;\n"
"grant execute on filter function
maxlevenshtein(string, string, int) to public;\n"
@@ -5537,6 +5543,25 @@ sql_update_jun2023(Client c, mvc *sql, s
"returns int external name
txtsim.dameraulevenshtein;\n"
"grant execute on function
dameraulevenshtein(string, string, int, int, int) to public;\n"
+ "create function sys.editdistance(x
string, y string)\n"
+ "returns int external name
txtsim.editdistance;\n"
+ "grant execute on function
editdistance(string, string) to public;\n"
+ "create function sys.editdistance2(x
string, y string)\n"
+ "returns int external name
txtsim.editdistance2;\n"
+ "grant execute on function
editdistance2(string, string) to public;\n"
+ "create function sys.soundex(x
string)\n"
+ "returns string external name
txtsim.soundex;\n"
+ "grant execute on function
soundex(string) to public;\n"
+ "create function sys.difference(x
string, y string)\n"
+ "returns int external name
txtsim.stringdiff;\n"
+ "grant execute on function
difference(string, string) to public;\n"
+ "create function
sys.qgramnormalize(x string)\n"
+ "returns string external name
txtsim.qgramnormalize;\n"
+ "grant execute on function
qgramnormalize(string) to public;\n"
+ "create function sys.similarity(x
string, y string)\n"
+ "returns double external name
txtsim.similarity;\n"
+ "grant execute on function
similarity(string, string) to public;\n"
+
"create function asciify(x string)\n"
"returns string external name
str.asciify;\n"
"grant execute on function
asciify(string) to public;\n"
@@ -5548,8 +5573,10 @@ sql_update_jun2023(Client c, mvc *sql, s
"grant execute on function
startswith(string, string, boolean) to public;\n"
"create filter function
sys.startswith(x string, y string)\n"
"external name str.startswith;\n"
+ "grant execute on filter function
startswith(string, string) to public;\n"
"create filter function
sys.startswith(x string, y string, icase boolean)\n"
"external name str.startswith;\n"
+ "grant execute on filter function
startswith(string, string, boolean) to public;\n"
"create function sys.endswith(x
string, y string)\n"
"returns boolean external name
str.endswith;\n"
"grant execute on function
endswith(string, string) to public;\n"
@@ -5558,8 +5585,10 @@ sql_update_jun2023(Client c, mvc *sql, s
"grant execute on function
endswith(string, string, boolean) to public;\n"
"create filter function
sys.endswith(x string, y string)\n"
"external name str.endswith;\n"
+ "grant execute on filter function
endswith(string, string) to public;\n"
"create filter function
sys.endswith(x string, y string, icase boolean)\n"
"external name str.endswith;\n"
+ "grant execute on filter function
endswith(string, string, boolean) to public;\n"
"create function sys.contains(x
string, y string)\n"
"returns boolean external name
str.contains;\n"
"grant execute on function
contains(string, string) to public;\n"
@@ -5573,7 +5602,7 @@ sql_update_jun2023(Client c, mvc *sql, s
"external name str.contains;\n"
"grant execute on filter function
contains(string, string, boolean) to public;\n"
- "update sys.functions set system =
true where system <> true and name in ('levenshtein', 'dameraulevenshtein',
'jarowinkler') and schema_id = 2000 and type = %d;\n"
+ "update sys.functions set system =
true where system <> true and name in ('levenshtein', 'dameraulevenshtein',
'jarowinkler', 'editdistance', 'editdistance2', 'soundex', 'difference',
'qgramnormalize', 'similarity') and schema_id = 2000 and type = %d;\n"
"update sys.functions set system =
true where system <> true and name in ('maxlevenshtein', 'minjarowinkler') and
schema_id = 2000 and type = %d;\n"
"update sys.functions set system =
true where system <> true and name in ('asciify', 'startswith', 'endswith',
'contains') and schema_id = 2000 and type = %d;\n"
"update sys.functions set system =
true where system <> true and name in ('startswith', 'endswith', 'contains')
and schema_id = 2000 and type = %d;\n"
diff --git
a/sql/test/emptydb-previous-upgrade-chain-hge/Tests/upgrade.stable.out.int128
b/sql/test/emptydb-previous-upgrade-chain-hge/Tests/upgrade.stable.out.int128
---
a/sql/test/emptydb-previous-upgrade-chain-hge/Tests/upgrade.stable.out.int128
+++
b/sql/test/emptydb-previous-upgrade-chain-hge/Tests/upgrade.stable.out.int128
@@ -617,13 +617,16 @@ returns int external name txtsim.levensh
grant execute on function levenshtein(string, string, int, int, int) to public;
create filter function sys.maxlevenshtein(x string, y string, k int)
external name txtsim.maxlevenshtein;
+grant execute on filter function maxlevenshtein(string, string, int) to public;
create filter function sys.maxlevenshtein(x string, y string, k int, insdel
int, rep int)
external name txtsim.maxlevenshtein;
+grant execute on filter function maxlevenshtein(string, string, int, int, int)
to public;
create function sys.jarowinkler(x string, y string)
returns double external name txtsim.jarowinkler;
grant execute on function jarowinkler(string, string) to public;
create filter function minjarowinkler(x string, y string, threshold double)
external name txtsim.minjarowinkler;
+grant execute on filter function minjarowinkler(string, string, double) to
public;
create function sys.dameraulevenshtein(x string, y string)
returns int external name txtsim.dameraulevenshtein;
grant execute on function dameraulevenshtein(string, string) to public;
@@ -649,38 +652,44 @@ create function sys.similarity(x string,
returns double external name txtsim.similarity;
grant execute on function similarity(string, string) to public;
create function asciify(x string)
-returns string external name str."asciify";
+returns string external name str.asciify;
grant execute on function asciify(string) to public;
create function sys.startswith(x string, y string)
-returns boolean external name str."startsWith";
+returns boolean external name str.startswith;
grant execute on function startswith(string, string) to public;
create function sys.startswith(x string, y string, icase boolean)
-returns boolean external name str."startsWith";
+returns boolean external name str.startswith;
grant execute on function startswith(string, string, boolean) to public;
create filter function sys.startswith(x string, y string)
-external name str."startsWith";
+external name str.startswith;
+grant execute on filter function startswith(string, string) to public;
create filter function sys.startswith(x string, y string, icase boolean)
-external name str."startsWith";
+external name str.startswith;
+grant execute on filter function startswith(string, string, boolean) to public;
create function sys.endswith(x string, y string)
-returns boolean external name str."endsWith";
+returns boolean external name str.endswith;
grant execute on function endswith(string, string) to public;
create function sys.endswith(x string, y string, icase boolean)
-returns boolean external name str."endsWith";
+returns boolean external name str.endswith;
grant execute on function endswith(string, string, boolean) to public;
-create filter function sys.endswith(s1 string, s2 string)
-external name str."endsWith";
-create filter function sys.endswith(s1 string, s2 string, icase boolean)
-external name str."endsWith";
+create filter function sys.endswith(x string, y string)
+external name str.endswith;
+grant execute on filter function endswith(string, string) to public;
+create filter function sys.endswith(x string, y string, icase boolean)
+external name str.endswith;
+grant execute on filter function endswith(string, string, boolean) to public;
create function sys.contains(x string, y string)
-returns boolean external name str."contains";
+returns boolean external name str.contains;
grant execute on function contains(string, string) to public;
create function sys.contains(x string, y string, icase boolean)
-returns boolean external name str."contains";
+returns boolean external name str.contains;
grant execute on function contains(string, string, boolean) to public;
create filter function sys.contains(x string, y string)
-external name str."contains";
+external name str.contains;
+grant execute on filter function contains(string, string) to public;
create filter function sys.contains(x string, y string, icase boolean)
-external name str."contains";
+external name str.contains;
+grant execute on filter function contains(string, string, boolean) to public;
update sys.functions set system = true where system <> true and name in
('levenshtein', 'dameraulevenshtein', 'jarowinkler', 'editdistance',
'editdistance2', 'soundex', 'difference', 'qgramnormalize', 'similarity') and
schema_id = 2000 and type = 1;
update sys.functions set system = true where system <> true and name in
('maxlevenshtein', 'minjarowinkler') and schema_id = 2000 and type = 4;
update sys.functions set system = true where system <> true and name in
('asciify', 'startswith', 'endswith', 'contains') and schema_id = 2000 and type
= 1;
diff --git a/sql/test/emptydb-previous-upgrade-chain/Tests/upgrade.stable.out
b/sql/test/emptydb-previous-upgrade-chain/Tests/upgrade.stable.out
--- a/sql/test/emptydb-previous-upgrade-chain/Tests/upgrade.stable.out
+++ b/sql/test/emptydb-previous-upgrade-chain/Tests/upgrade.stable.out
@@ -617,13 +617,16 @@ returns int external name txtsim.levensh
grant execute on function levenshtein(string, string, int, int, int) to public;
create filter function sys.maxlevenshtein(x string, y string, k int)
external name txtsim.maxlevenshtein;
+grant execute on filter function maxlevenshtein(string, string, int) to public;
create filter function sys.maxlevenshtein(x string, y string, k int, insdel
int, rep int)
external name txtsim.maxlevenshtein;
+grant execute on filter function maxlevenshtein(string, string, int, int, int)
to public;
create function sys.jarowinkler(x string, y string)
returns double external name txtsim.jarowinkler;
grant execute on function jarowinkler(string, string) to public;
create filter function minjarowinkler(x string, y string, threshold double)
external name txtsim.minjarowinkler;
+grant execute on filter function minjarowinkler(string, string, double) to
public;
create function sys.dameraulevenshtein(x string, y string)
returns int external name txtsim.dameraulevenshtein;
grant execute on function dameraulevenshtein(string, string) to public;
@@ -649,38 +652,44 @@ create function sys.similarity(x string,
returns double external name txtsim.similarity;
grant execute on function similarity(string, string) to public;
create function asciify(x string)
-returns string external name str."asciify";
+returns string external name str.asciify;
grant execute on function asciify(string) to public;
create function sys.startswith(x string, y string)
-returns boolean external name str."startsWith";
+returns boolean external name str.startswith;
grant execute on function startswith(string, string) to public;
create function sys.startswith(x string, y string, icase boolean)
-returns boolean external name str."startsWith";
+returns boolean external name str.startswith;
grant execute on function startswith(string, string, boolean) to public;
create filter function sys.startswith(x string, y string)
-external name str."startsWith";
+external name str.startswith;
+grant execute on filter function startswith(string, string) to public;
create filter function sys.startswith(x string, y string, icase boolean)
-external name str."startsWith";
+external name str.startswith;
+grant execute on filter function startswith(string, string, boolean) to public;
create function sys.endswith(x string, y string)
-returns boolean external name str."endsWith";
+returns boolean external name str.endswith;
grant execute on function endswith(string, string) to public;
create function sys.endswith(x string, y string, icase boolean)
-returns boolean external name str."endsWith";
+returns boolean external name str.endswith;
grant execute on function endswith(string, string, boolean) to public;
-create filter function sys.endswith(s1 string, s2 string)
-external name str."endsWith";
-create filter function sys.endswith(s1 string, s2 string, icase boolean)
-external name str."endsWith";
+create filter function sys.endswith(x string, y string)
+external name str.endswith;
+grant execute on filter function endswith(string, string) to public;
+create filter function sys.endswith(x string, y string, icase boolean)
+external name str.endswith;
+grant execute on filter function endswith(string, string, boolean) to public;
create function sys.contains(x string, y string)
-returns boolean external name str."contains";
+returns boolean external name str.contains;
grant execute on function contains(string, string) to public;
create function sys.contains(x string, y string, icase boolean)
-returns boolean external name str."contains";
+returns boolean external name str.contains;
grant execute on function contains(string, string, boolean) to public;
create filter function sys.contains(x string, y string)
-external name str."contains";
+external name str.contains;
+grant execute on filter function contains(string, string) to public;
create filter function sys.contains(x string, y string, icase boolean)
-external name str."contains";
+external name str.contains;
+grant execute on filter function contains(string, string, boolean) to public;
update sys.functions set system = true where system <> true and name in
('levenshtein', 'dameraulevenshtein', 'jarowinkler', 'editdistance',
'editdistance2', 'soundex', 'difference', 'qgramnormalize', 'similarity') and
schema_id = 2000 and type = 1;
update sys.functions set system = true where system <> true and name in
('maxlevenshtein', 'minjarowinkler') and schema_id = 2000 and type = 4;
update sys.functions set system = true where system <> true and name in
('asciify', 'startswith', 'endswith', 'contains') and schema_id = 2000 and type
= 1;
diff --git
a/sql/test/emptydb-previous-upgrade-chain/Tests/upgrade.stable.out.int128
b/sql/test/emptydb-previous-upgrade-chain/Tests/upgrade.stable.out.int128
--- a/sql/test/emptydb-previous-upgrade-chain/Tests/upgrade.stable.out.int128
+++ b/sql/test/emptydb-previous-upgrade-chain/Tests/upgrade.stable.out.int128
@@ -686,13 +686,16 @@ returns int external name txtsim.levensh
grant execute on function levenshtein(string, string, int, int, int) to public;
create filter function sys.maxlevenshtein(x string, y string, k int)
external name txtsim.maxlevenshtein;
+grant execute on filter function maxlevenshtein(string, string, int) to public;
create filter function sys.maxlevenshtein(x string, y string, k int, insdel
int, rep int)
external name txtsim.maxlevenshtein;
+grant execute on filter function maxlevenshtein(string, string, int, int, int)
to public;
create function sys.jarowinkler(x string, y string)
returns double external name txtsim.jarowinkler;
grant execute on function jarowinkler(string, string) to public;
create filter function minjarowinkler(x string, y string, threshold double)
external name txtsim.minjarowinkler;
+grant execute on filter function minjarowinkler(string, string, double) to
public;
create function sys.dameraulevenshtein(x string, y string)
returns int external name txtsim.dameraulevenshtein;
grant execute on function dameraulevenshtein(string, string) to public;
@@ -718,38 +721,44 @@ create function sys.similarity(x string,
returns double external name txtsim.similarity;
grant execute on function similarity(string, string) to public;
create function asciify(x string)
-returns string external name str."asciify";
+returns string external name str.asciify;
grant execute on function asciify(string) to public;
create function sys.startswith(x string, y string)
-returns boolean external name str."startsWith";
+returns boolean external name str.startswith;
grant execute on function startswith(string, string) to public;
create function sys.startswith(x string, y string, icase boolean)
-returns boolean external name str."startsWith";
+returns boolean external name str.startswith;
grant execute on function startswith(string, string, boolean) to public;
create filter function sys.startswith(x string, y string)
-external name str."startsWith";
+external name str.startswith;
+grant execute on filter function startswith(string, string) to public;
create filter function sys.startswith(x string, y string, icase boolean)
-external name str."startsWith";
+external name str.startswith;
+grant execute on filter function startswith(string, string, boolean) to public;
create function sys.endswith(x string, y string)
-returns boolean external name str."endsWith";
+returns boolean external name str.endswith;
grant execute on function endswith(string, string) to public;
create function sys.endswith(x string, y string, icase boolean)
-returns boolean external name str."endsWith";
+returns boolean external name str.endswith;
grant execute on function endswith(string, string, boolean) to public;
-create filter function sys.endswith(s1 string, s2 string)
-external name str."endsWith";
-create filter function sys.endswith(s1 string, s2 string, icase boolean)
-external name str."endsWith";
+create filter function sys.endswith(x string, y string)
+external name str.endswith;
+grant execute on filter function endswith(string, string) to public;
+create filter function sys.endswith(x string, y string, icase boolean)
+external name str.endswith;
+grant execute on filter function endswith(string, string, boolean) to public;
create function sys.contains(x string, y string)
-returns boolean external name str."contains";
+returns boolean external name str.contains;
_______________________________________________
checkin-list mailing list -- [email protected]
To unsubscribe send an email to [email protected]