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]

Reply via email to