Changeset: 8ba85c5ddbb2 for MonetDB URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=8ba85c5ddbb2 Removed Files: sql/test/BugTracker-2009/Tests/alter_table_drop_constraint.SF-2803477.sql sql/test/miscellaneous/Tests/simple_selects.sql Modified Files: clients/Tests/MAL-signatures.stable.out clients/Tests/MAL-signatures.stable.out.int128 monetdb5/modules/mal/wlc.c sql/backends/monet5/rel_bin.c sql/backends/monet5/sql.c sql/backends/monet5/sql_cat.c sql/server/rel_schema.c sql/test/BugTracker-2009/Tests/alter_table_drop_constraint.SF-2803477.test sql/test/miscellaneous/Tests/simple_selects.test Branch: default Log Message:
Merged with Oct2020 diffs (truncated from 479 to 300 lines): diff --git a/clients/Tests/MAL-signatures.stable.out b/clients/Tests/MAL-signatures.stable.out --- a/clients/Tests/MAL-signatures.stable.out +++ b/clients/Tests/MAL-signatures.stable.out @@ -9514,19 +9514,19 @@ stdout of test 'MAL-signatures` in direc [ "sqlcatalog", "comment_on", "pattern sqlcatalog.comment_on(X_1:int, X_2:str):void ", "SQLcomment_on;", "" ] [ "sqlcatalog", "create_function", "pattern sqlcatalog.create_function(X_1:str, X_2:str, X_3:ptr):void ", "SQLcreate_function;", "" ] [ "sqlcatalog", "create_role", "pattern sqlcatalog.create_role(X_1:str, X_2:str, X_3:int):void ", "SQLcreate_role;", "" ] -[ "sqlcatalog", "create_schema", "pattern sqlcatalog.create_schema(X_1:str, X_2:str, X_3:int, X_4:int):void ", "SQLcreate_schema;", "" ] +[ "sqlcatalog", "create_schema", "pattern sqlcatalog.create_schema(X_1:str, X_2:str, X_3:int):void ", "SQLcreate_schema;", "" ] [ "sqlcatalog", "create_seq", "pattern sqlcatalog.create_seq(X_1:str, X_2:str, X_3:ptr, X_4:int):void ", "SQLcreate_seq;", "" ] [ "sqlcatalog", "create_table", "pattern sqlcatalog.create_table(X_1:str, X_2:str, X_3:ptr, X_4:int):void ", "SQLcreate_table;", "" ] [ "sqlcatalog", "create_trigger", "pattern sqlcatalog.create_trigger(X_1:str, X_2:str, X_3:str, X_4:int, X_5:int, X_6:int, X_7:str, X_8:str, X_9:str, X_10:str):void ", "SQLcreate_trigger;", "" ] [ "sqlcatalog", "create_type", "pattern sqlcatalog.create_type(X_1:str, X_2:str, X_3:str):void ", "SQLcreate_type;", "" ] [ "sqlcatalog", "create_user", "pattern sqlcatalog.create_user(X_1:str, X_2:str, X_3:int, X_4:str, X_5:str, X_6:str):void ", "SQLcreate_user;", "" ] [ "sqlcatalog", "create_view", "pattern sqlcatalog.create_view(X_1:str, X_2:str, X_3:ptr, X_4:int):void ", "SQLcreate_view;", "" ] -[ "sqlcatalog", "drop_constraint", "pattern sqlcatalog.drop_constraint(X_1:str, X_2:str, X_3:int, X_4:int):void ", "SQLdrop_constraint;", "" ] +[ "sqlcatalog", "drop_constraint", "pattern sqlcatalog.drop_constraint(X_1:str, X_2:str, X_3:str, X_4:int, X_5:int):void ", "SQLdrop_constraint;", "" ] [ "sqlcatalog", "drop_function", "pattern sqlcatalog.drop_function(X_1:str, X_2:str, X_3:int, X_4:int, X_5:int):void ", "SQLdrop_function;", "" ] [ "sqlcatalog", "drop_index", "pattern sqlcatalog.drop_index(X_1:str, X_2:str, X_3:int):void ", "SQLdrop_index;", "" ] [ "sqlcatalog", "drop_role", "pattern sqlcatalog.drop_role(X_1:str, X_2:int):void ", "SQLdrop_role;", "" ] [ "sqlcatalog", "drop_role", "pattern sqlcatalog.drop_role(X_1:str, X_2:str, X_3:int):void ", "SQLdrop_role;", "" ] -[ "sqlcatalog", "drop_schema", "pattern sqlcatalog.drop_schema(X_1:str, X_2:str, X_3:int, X_4:int):void ", "SQLdrop_schema;", "" ] +[ "sqlcatalog", "drop_schema", "pattern sqlcatalog.drop_schema(X_1:str, X_2:int, X_3:int):void ", "SQLdrop_schema;", "" ] [ "sqlcatalog", "drop_seq", "pattern sqlcatalog.drop_seq(X_1:str, X_2:str, X_3:int):void ", "SQLdrop_seq;", "" ] [ "sqlcatalog", "drop_table", "pattern sqlcatalog.drop_table(X_1:str, X_2:str, X_3:int, X_4:int):void ", "SQLdrop_table;", "" ] [ "sqlcatalog", "drop_trigger", "pattern sqlcatalog.drop_trigger(X_1:str, X_2:str, X_3:int):void ", "SQLdrop_trigger;", "" ] @@ -9693,7 +9693,7 @@ stdout of test 'MAL-signatures` in direc [ "wlc", "commit", "pattern wlc.commit():void ", "WLCcommitCmd;", "" ] [ "wlc", "create_function", "pattern wlc.create_function(X_1:str, X_2:str):void ", "WLCgeneric;", "" ] [ "wlc", "create_role", "pattern wlc.create_role(X_1:str, X_2:str, X_3:int):void ", "WLCgeneric;", "" ] -[ "wlc", "create_schema", "pattern wlc.create_schema(X_1:str, X_2:str, X_3:int, X_4:int):void ", "WLCgeneric;", "" ] +[ "wlc", "create_schema", "pattern wlc.create_schema(X_1:str, X_2:str, X_3:int):void ", "WLCgeneric;", "" ] [ "wlc", "create_seq", "pattern wlc.create_seq(X_1:str, X_2:str, X_3:int):void ", "WLCgeneric;", "" ] [ "wlc", "create_table", "pattern wlc.create_table(X_1:str, X_2:str, X_3:int):void ", "WLCgeneric;", "" ] [ "wlc", "create_trigger", "pattern wlc.create_trigger(X_1:str, X_2:str, X_3:str, X_4:int, X_5:int, X_6:int, X_7:str, X_8:str, X_9:str, X_10:str):void ", "WLCgeneric;", "" ] @@ -9701,12 +9701,12 @@ stdout of test 'MAL-signatures` in direc [ "wlc", "create_user", "pattern wlc.create_user(X_1:str, X_2:str, X_3:int, X_4:str, X_5:str):void ", "WLCgeneric;", "" ] [ "wlc", "create_view", "pattern wlc.create_view(X_1:str, X_2:str, X_3:int):void ", "WLCgeneric;", "" ] [ "wlc", "delete", "pattern wlc.delete(X_1:str, X_2:str, X_3:any):int ", "WLCdelete;", "" ] -[ "wlc", "drop_constraint", "pattern wlc.drop_constraint(X_1:str, X_2:str, X_3:int, X_4:int):void ", "WLCgeneric;", "" ] +[ "wlc", "drop_constraint", "pattern wlc.drop_constraint(X_1:str, X_2:str, X_3:str, X_4:int, X_5:int):void ", "WLCgeneric;", "" ] [ "wlc", "drop_function", "pattern wlc.drop_function(X_1:str, X_2:str, X_3:int, X_4:int, X_5:int):void ", "WLCgeneric;", "" ] [ "wlc", "drop_index", "pattern wlc.drop_index(X_1:str, X_2:str, X_3:int):void ", "WLCgeneric;", "" ] [ "wlc", "drop_role", "pattern wlc.drop_role(X_1:str, X_2:int):void ", "WLCgeneric;", "" ] [ "wlc", "drop_role", "pattern wlc.drop_role(X_1:str, X_2:str, X_3:int):void ", "WLCgeneric;", "" ] -[ "wlc", "drop_schema", "pattern wlc.drop_schema(X_1:str, X_2:str, X_3:int, X_4:int):void ", "WLCgeneric;", "" ] +[ "wlc", "drop_schema", "pattern wlc.drop_schema(X_1:str, X_2:int, X_3:int):void ", "WLCgeneric;", "" ] [ "wlc", "drop_seq", "pattern wlc.drop_seq(X_1:str, X_2:str, X_3:int):void ", "WLCgeneric;", "" ] [ "wlc", "drop_table", "pattern wlc.drop_table(X_1:str, X_2:str, X_3:int, X_4:int):void ", "WLCgeneric;", "" ] [ "wlc", "drop_trigger", "pattern wlc.drop_trigger(X_1:str, X_2:str, X_3:int):void ", "WLCgeneric;", "" ] @@ -9762,7 +9762,7 @@ stdout of test 'MAL-signatures` in direc [ "wlr", "commit", "pattern wlr.commit():void ", "WLRcommit;", "" ] [ "wlr", "create_function", "pattern wlr.create_function(X_1:str, X_2:str):void ", "WLRgeneric;", "" ] [ "wlr", "create_role", "pattern wlr.create_role(X_1:str, X_2:str, X_3:int):void ", "WLRgeneric;", "" ] -[ "wlr", "create_schema", "pattern wlr.create_schema(X_1:str, X_2:str, X_3:int, X_4:int):void ", "WLRgeneric;", "" ] +[ "wlr", "create_schema", "pattern wlr.create_schema(X_1:str, X_2:str, X_3:int):void ", "WLRgeneric;", "" ] [ "wlr", "create_seq", "pattern wlr.create_seq(X_1:str, X_2:str, X_3:int):void ", "WLRgeneric;", "" ] [ "wlr", "create_table", "pattern wlr.create_table(X_1:str, X_2:str, X_3:int):void ", "WLRgeneric;", "" ] [ "wlr", "create_trigger", "pattern wlr.create_trigger(X_1:str, X_2:str, X_3:str, X_4:int, X_5:int, X_6:int, X_7:str, X_8:str, X_9:str, X_10:str):void ", "WLRgeneric;", "" ] @@ -9770,12 +9770,12 @@ stdout of test 'MAL-signatures` in direc [ "wlr", "create_user", "pattern wlr.create_user(X_1:str, X_2:str, X_3:int, X_4:str, X_5:str):void ", "WLRgeneric;", "" ] [ "wlr", "create_view", "pattern wlr.create_view(X_1:str, X_2:str, X_3:int):void ", "WLRgeneric;", "" ] [ "wlr", "delete", "pattern wlr.delete(X_1:str, X_2:str, X_3:oid...):int ", "WLRdelete;", "" ] -[ "wlr", "drop_constraint", "pattern wlr.drop_constraint(X_1:str, X_2:str, X_3:int, X_4:int):void ", "WLRgeneric;", "" ] +[ "wlr", "drop_constraint", "pattern wlr.drop_constraint(X_1:str, X_2:str, X_3:str, X_4:int, X_5:int):void ", "WLRgeneric;", "" ] [ "wlr", "drop_function", "pattern wlr.drop_function(X_1:str, X_2:str, X_3:int, X_4:int, X_5:int):void ", "WLRgeneric;", "" ] [ "wlr", "drop_index", "pattern wlr.drop_index(X_1:str, X_2:str, X_3:int):void ", "WLRgeneric;", "" ] [ "wlr", "drop_role", "pattern wlr.drop_role(X_1:str, X_2:int):void ", "WLRgeneric;", "" ] [ "wlr", "drop_role", "pattern wlr.drop_role(X_1:str, X_2:str, X_3:int):void ", "WLRgeneric;", "" ] -[ "wlr", "drop_schema", "pattern wlr.drop_schema(X_1:str, X_2:str, X_3:int, X_4:int):void ", "WLRgeneric;", "" ] +[ "wlr", "drop_schema", "pattern wlr.drop_schema(X_1:str, X_2:int, X_3:int):void ", "WLRgeneric;", "" ] [ "wlr", "drop_seq", "pattern wlr.drop_seq(X_1:str, X_2:str, X_3:int):void ", "WLRgeneric;", "" ] [ "wlr", "drop_table", "pattern wlr.drop_table(X_1:str, X_2:str, X_3:int, X_4:int):void ", "WLRgeneric;", "" ] [ "wlr", "drop_trigger", "pattern wlr.drop_trigger(X_1:str, X_2:str, X_3:int):void ", "WLRgeneric;", "" ] 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 @@ -12836,19 +12836,19 @@ stdout of test 'MAL-signatures` in direc [ "sqlcatalog", "comment_on", "pattern sqlcatalog.comment_on(X_1:int, X_2:str):void ", "SQLcomment_on;", "" ] [ "sqlcatalog", "create_function", "pattern sqlcatalog.create_function(X_1:str, X_2:str, X_3:ptr):void ", "SQLcreate_function;", "" ] [ "sqlcatalog", "create_role", "pattern sqlcatalog.create_role(X_1:str, X_2:str, X_3:int):void ", "SQLcreate_role;", "" ] -[ "sqlcatalog", "create_schema", "pattern sqlcatalog.create_schema(X_1:str, X_2:str, X_3:int, X_4:int):void ", "SQLcreate_schema;", "" ] +[ "sqlcatalog", "create_schema", "pattern sqlcatalog.create_schema(X_1:str, X_2:str, X_3:int):void ", "SQLcreate_schema;", "" ] [ "sqlcatalog", "create_seq", "pattern sqlcatalog.create_seq(X_1:str, X_2:str, X_3:ptr, X_4:int):void ", "SQLcreate_seq;", "" ] [ "sqlcatalog", "create_table", "pattern sqlcatalog.create_table(X_1:str, X_2:str, X_3:ptr, X_4:int):void ", "SQLcreate_table;", "" ] [ "sqlcatalog", "create_trigger", "pattern sqlcatalog.create_trigger(X_1:str, X_2:str, X_3:str, X_4:int, X_5:int, X_6:int, X_7:str, X_8:str, X_9:str, X_10:str):void ", "SQLcreate_trigger;", "" ] [ "sqlcatalog", "create_type", "pattern sqlcatalog.create_type(X_1:str, X_2:str, X_3:str):void ", "SQLcreate_type;", "" ] [ "sqlcatalog", "create_user", "pattern sqlcatalog.create_user(X_1:str, X_2:str, X_3:int, X_4:str, X_5:str, X_6:str):void ", "SQLcreate_user;", "" ] [ "sqlcatalog", "create_view", "pattern sqlcatalog.create_view(X_1:str, X_2:str, X_3:ptr, X_4:int):void ", "SQLcreate_view;", "" ] -[ "sqlcatalog", "drop_constraint", "pattern sqlcatalog.drop_constraint(X_1:str, X_2:str, X_3:int, X_4:int):void ", "SQLdrop_constraint;", "" ] +[ "sqlcatalog", "drop_constraint", "pattern sqlcatalog.drop_constraint(X_1:str, X_2:str, X_3:str, X_4:int, X_5:int):void ", "SQLdrop_constraint;", "" ] [ "sqlcatalog", "drop_function", "pattern sqlcatalog.drop_function(X_1:str, X_2:str, X_3:int, X_4:int, X_5:int):void ", "SQLdrop_function;", "" ] [ "sqlcatalog", "drop_index", "pattern sqlcatalog.drop_index(X_1:str, X_2:str, X_3:int):void ", "SQLdrop_index;", "" ] [ "sqlcatalog", "drop_role", "pattern sqlcatalog.drop_role(X_1:str, X_2:int):void ", "SQLdrop_role;", "" ] [ "sqlcatalog", "drop_role", "pattern sqlcatalog.drop_role(X_1:str, X_2:str, X_3:int):void ", "SQLdrop_role;", "" ] -[ "sqlcatalog", "drop_schema", "pattern sqlcatalog.drop_schema(X_1:str, X_2:str, X_3:int, X_4:int):void ", "SQLdrop_schema;", "" ] +[ "sqlcatalog", "drop_schema", "pattern sqlcatalog.drop_schema(X_1:str, X_2:int, X_3:int):void ", "SQLdrop_schema;", "" ] [ "sqlcatalog", "drop_seq", "pattern sqlcatalog.drop_seq(X_1:str, X_2:str, X_3:int):void ", "SQLdrop_seq;", "" ] [ "sqlcatalog", "drop_table", "pattern sqlcatalog.drop_table(X_1:str, X_2:str, X_3:int, X_4:int):void ", "SQLdrop_table;", "" ] [ "sqlcatalog", "drop_trigger", "pattern sqlcatalog.drop_trigger(X_1:str, X_2:str, X_3:int):void ", "SQLdrop_trigger;", "" ] @@ -13016,7 +13016,7 @@ stdout of test 'MAL-signatures` in direc [ "wlc", "commit", "pattern wlc.commit():void ", "WLCcommitCmd;", "" ] [ "wlc", "create_function", "pattern wlc.create_function(X_1:str, X_2:str):void ", "WLCgeneric;", "" ] [ "wlc", "create_role", "pattern wlc.create_role(X_1:str, X_2:str, X_3:int):void ", "WLCgeneric;", "" ] -[ "wlc", "create_schema", "pattern wlc.create_schema(X_1:str, X_2:str, X_3:int, X_4:int):void ", "WLCgeneric;", "" ] +[ "wlc", "create_schema", "pattern wlc.create_schema(X_1:str, X_2:str, X_3:int):void ", "WLCgeneric;", "" ] [ "wlc", "create_seq", "pattern wlc.create_seq(X_1:str, X_2:str, X_3:int):void ", "WLCgeneric;", "" ] [ "wlc", "create_table", "pattern wlc.create_table(X_1:str, X_2:str, X_3:int):void ", "WLCgeneric;", "" ] [ "wlc", "create_trigger", "pattern wlc.create_trigger(X_1:str, X_2:str, X_3:str, X_4:int, X_5:int, X_6:int, X_7:str, X_8:str, X_9:str, X_10:str):void ", "WLCgeneric;", "" ] @@ -13024,12 +13024,12 @@ stdout of test 'MAL-signatures` in direc [ "wlc", "create_user", "pattern wlc.create_user(X_1:str, X_2:str, X_3:int, X_4:str, X_5:str):void ", "WLCgeneric;", "" ] [ "wlc", "create_view", "pattern wlc.create_view(X_1:str, X_2:str, X_3:int):void ", "WLCgeneric;", "" ] [ "wlc", "delete", "pattern wlc.delete(X_1:str, X_2:str, X_3:any):int ", "WLCdelete;", "" ] -[ "wlc", "drop_constraint", "pattern wlc.drop_constraint(X_1:str, X_2:str, X_3:int, X_4:int):void ", "WLCgeneric;", "" ] +[ "wlc", "drop_constraint", "pattern wlc.drop_constraint(X_1:str, X_2:str, X_3:str, X_4:int, X_5:int):void ", "WLCgeneric;", "" ] [ "wlc", "drop_function", "pattern wlc.drop_function(X_1:str, X_2:str, X_3:int, X_4:int, X_5:int):void ", "WLCgeneric;", "" ] [ "wlc", "drop_index", "pattern wlc.drop_index(X_1:str, X_2:str, X_3:int):void ", "WLCgeneric;", "" ] [ "wlc", "drop_role", "pattern wlc.drop_role(X_1:str, X_2:int):void ", "WLCgeneric;", "" ] [ "wlc", "drop_role", "pattern wlc.drop_role(X_1:str, X_2:str, X_3:int):void ", "WLCgeneric;", "" ] -[ "wlc", "drop_schema", "pattern wlc.drop_schema(X_1:str, X_2:str, X_3:int, X_4:int):void ", "WLCgeneric;", "" ] +[ "wlc", "drop_schema", "pattern wlc.drop_schema(X_1:str, X_2:int, X_3:int):void ", "WLCgeneric;", "" ] [ "wlc", "drop_seq", "pattern wlc.drop_seq(X_1:str, X_2:str, X_3:int):void ", "WLCgeneric;", "" ] [ "wlc", "drop_table", "pattern wlc.drop_table(X_1:str, X_2:str, X_3:int, X_4:int):void ", "WLCgeneric;", "" ] [ "wlc", "drop_trigger", "pattern wlc.drop_trigger(X_1:str, X_2:str, X_3:int):void ", "WLCgeneric;", "" ] @@ -13085,7 +13085,7 @@ stdout of test 'MAL-signatures` in direc [ "wlr", "commit", "pattern wlr.commit():void ", "WLRcommit;", "" ] [ "wlr", "create_function", "pattern wlr.create_function(X_1:str, X_2:str):void ", "WLRgeneric;", "" ] [ "wlr", "create_role", "pattern wlr.create_role(X_1:str, X_2:str, X_3:int):void ", "WLRgeneric;", "" ] -[ "wlr", "create_schema", "pattern wlr.create_schema(X_1:str, X_2:str, X_3:int, X_4:int):void ", "WLRgeneric;", "" ] +[ "wlr", "create_schema", "pattern wlr.create_schema(X_1:str, X_2:str, X_3:int):void ", "WLRgeneric;", "" ] [ "wlr", "create_seq", "pattern wlr.create_seq(X_1:str, X_2:str, X_3:int):void ", "WLRgeneric;", "" ] [ "wlr", "create_table", "pattern wlr.create_table(X_1:str, X_2:str, X_3:int):void ", "WLRgeneric;", "" ] [ "wlr", "create_trigger", "pattern wlr.create_trigger(X_1:str, X_2:str, X_3:str, X_4:int, X_5:int, X_6:int, X_7:str, X_8:str, X_9:str, X_10:str):void ", "WLRgeneric;", "" ] @@ -13093,12 +13093,12 @@ stdout of test 'MAL-signatures` in direc [ "wlr", "create_user", "pattern wlr.create_user(X_1:str, X_2:str, X_3:int, X_4:str, X_5:str):void ", "WLRgeneric;", "" ] [ "wlr", "create_view", "pattern wlr.create_view(X_1:str, X_2:str, X_3:int):void ", "WLRgeneric;", "" ] [ "wlr", "delete", "pattern wlr.delete(X_1:str, X_2:str, X_3:oid...):int ", "WLRdelete;", "" ] -[ "wlr", "drop_constraint", "pattern wlr.drop_constraint(X_1:str, X_2:str, X_3:int, X_4:int):void ", "WLRgeneric;", "" ] +[ "wlr", "drop_constraint", "pattern wlr.drop_constraint(X_1:str, X_2:str, X_3:str, X_4:int, X_5:int):void ", "WLRgeneric;", "" ] [ "wlr", "drop_function", "pattern wlr.drop_function(X_1:str, X_2:str, X_3:int, X_4:int, X_5:int):void ", "WLRgeneric;", "" ] [ "wlr", "drop_index", "pattern wlr.drop_index(X_1:str, X_2:str, X_3:int):void ", "WLRgeneric;", "" ] [ "wlr", "drop_role", "pattern wlr.drop_role(X_1:str, X_2:int):void ", "WLRgeneric;", "" ] [ "wlr", "drop_role", "pattern wlr.drop_role(X_1:str, X_2:str, X_3:int):void ", "WLRgeneric;", "" ] -[ "wlr", "drop_schema", "pattern wlr.drop_schema(X_1:str, X_2:str, X_3:int, X_4:int):void ", "WLRgeneric;", "" ] +[ "wlr", "drop_schema", "pattern wlr.drop_schema(X_1:str, X_2:int, X_3:int):void ", "WLRgeneric;", "" ] [ "wlr", "drop_seq", "pattern wlr.drop_seq(X_1:str, X_2:str, X_3:int):void ", "WLRgeneric;", "" ] [ "wlr", "drop_table", "pattern wlr.drop_table(X_1:str, X_2:str, X_3:int, X_4:int):void ", "WLRgeneric;", "" ] [ "wlr", "drop_trigger", "pattern wlr.drop_trigger(X_1:str, X_2:str, X_3:int):void ", "WLRgeneric;", "" ] diff --git a/monetdb5/modules/mal/wlc.c b/monetdb5/modules/mal/wlc.c --- a/monetdb5/modules/mal/wlc.c +++ b/monetdb5/modules/mal/wlc.c @@ -1100,13 +1100,13 @@ mel_func wlc_init_funcs[] = { pattern("wlc", "alter_seq", WLCgeneric, false, "Catalog operation alter_seq", args(0,3, arg("sname",str),arg("seqname",str),arg("val",lng))), pattern("wlc", "alter_seq", WLCgeneric, false, "Catalog operation alter_seq", args(0,4, arg("sname",str),arg("seqname",str),arg("seq",ptr),batarg("val",lng))), pattern("wlc", "drop_seq", WLCgeneric, false, "Catalog operation drop_seq", args(0,3, arg("sname",str),arg("nme",str),arg("action",int))), - pattern("wlc", "create_schema", WLCgeneric, false, "Catalog operation create_schema", args(0,4, arg("sname",str),arg("auth",str),arg("ifnotexists",int),arg("action",int))), - pattern("wlc", "drop_schema", WLCgeneric, false, "Catalog operation drop_schema", args(0,4, arg("sname",str),arg("s",str),arg("ifexists",int),arg("action",int))), + pattern("wlc", "create_schema", WLCgeneric, false, "Catalog operation create_schema", args(0,3, arg("sname",str),arg("auth",str),arg("action",int))), + pattern("wlc", "drop_schema", WLCgeneric, false, "Catalog operation drop_schema", args(0,3, arg("sname",str),arg("ifexists",int),arg("action",int))), pattern("wlc", "create_table", WLCgeneric, false, "Catalog operation create_table", args(0,3, arg("sname",str),arg("tname",str),arg("temp",int))), pattern("wlc", "create_view", WLCgeneric, false, "Catalog operation create_view", args(0,3, arg("sname",str),arg("tname",str),arg("temp",int))), pattern("wlc", "drop_table", WLCgeneric, false, "Catalog operation drop_table", args(0,4, arg("sname",str),arg("name",str),arg("action",int),arg("ifexists",int))), pattern("wlc", "drop_view", WLCgeneric, false, "Catalog operation drop_view", args(0,4, arg("sname",str),arg("name",str),arg("action",int),arg("ifexists",int))), - pattern("wlc", "drop_constraint", WLCgeneric, false, "Catalog operation drop_constraint", args(0,4, arg("sname",str),arg("name",str),arg("action",int),arg("ifexists",int))), + pattern("wlc", "drop_constraint", WLCgeneric, false, "Catalog operation drop_constraint", args(0,5, arg("sname",str),arg("tname",str),arg("name",str),arg("action",int),arg("ifexists",int))), pattern("wlc", "alter_table", WLCgeneric, false, "Catalog operation alter_table", args(0,3, arg("sname",str),arg("tname",str),arg("action",int))), pattern("wlc", "create_type", WLCgeneric, false, "Catalog operation create_type", args(0,3, arg("sname",str),arg("nme",str),arg("impl",str))), pattern("wlc", "drop_type", WLCgeneric, false, "Catalog operation drop_type", args(0,3, arg("sname",str),arg("nme",str),arg("action",int))), diff --git a/sql/backends/monet5/rel_bin.c b/sql/backends/monet5/rel_bin.c --- a/sql/backends/monet5/rel_bin.c +++ b/sql/backends/monet5/rel_bin.c @@ -5648,7 +5648,7 @@ rel2bin_trans(backend *be, sql_rel *rel, } static stmt * -rel2bin_catalog(backend *be, sql_rel *rel, list *refs) +rel2bin_catalog_schema(backend *be, sql_rel *rel, list *refs) { mvc *sql = be->mvc; node *en = rel->exps->h; @@ -5664,23 +5664,24 @@ rel2bin_catalog(backend *be, sql_rel *re sname = exp_bin(be, en->data, NULL, NULL, NULL, NULL, NULL, NULL, 0, 0, 0); if (!sname) return NULL; - if (en->next) { - name = exp_bin(be, en->next->data, NULL, NULL, NULL, NULL, NULL, NULL, 0, 0, 0); - if (!name) - return NULL; + append(l, sname); + en = en->next; + if (rel->flag == ddl_create_schema) { + if (en) { + name = exp_bin(be, en->data, NULL, NULL, NULL, NULL, NULL, NULL, 0, 0, 0); + if (!name) + return NULL; + } else { + name = stmt_atom_string_nil(be); + } + append(l, name); } else { - name = stmt_atom_string_nil(be); - } - if (en->next && en->next->next) { - ifexists = exp_bin(be, en->next->next->data, NULL, NULL, NULL, NULL, NULL, NULL, 0, 0, 0); + assert(rel->flag == ddl_drop_schema); + ifexists = exp_bin(be, en->data, NULL, NULL, NULL, NULL, NULL, NULL, 0, 0, 0); if (!ifexists) return NULL; - } else { - ifexists = stmt_atom_int(be, 0); - } - append(l, sname); - append(l, name); - append(l, ifexists); + append(l, ifexists); + } append(l, action); return stmt_catalog(be, rel->flag, stmt_list(be, l)); } @@ -5691,7 +5692,7 @@ rel2bin_catalog_table(backend *be, sql_r mvc *sql = be->mvc; node *en = rel->exps->h; stmt *action = exp_bin(be, en->data, NULL, NULL, NULL, NULL, NULL, NULL, 0, 0, 0); - stmt *table = NULL, *sname, *tname = NULL, *ifexists = NULL; + stmt *table = NULL, *sname, *tname = NULL, *kname = NULL, *ifexists = NULL; list *l = sa_list(sql->sa); if (!action) @@ -5712,6 +5713,15 @@ rel2bin_catalog_table(backend *be, sql_r append(l, sname); assert(tname); append(l, tname); + if (rel->flag == ddl_drop_constraint) { /* needs extra string parameter for constraint name */ + if (en) { + kname = exp_bin(be, en->data, NULL, NULL, NULL, NULL, NULL, NULL, 0, 0, 0); + if (!kname) + return NULL; + en = en->next; + } + append(l, kname); + } if (rel->flag != ddl_drop_table && rel->flag != ddl_drop_view && rel->flag != ddl_drop_constraint) { if (en) { table = exp_bin(be, en->data, NULL, NULL, NULL, NULL, NULL, NULL, 0, 0, 0); @@ -5796,7 +5806,7 @@ rel2bin_ddl(backend *be, sql_rel *rel, l break; case ddl_create_schema: case ddl_drop_schema: - s = rel2bin_catalog(be, rel, refs); + s = rel2bin_catalog_schema(be, rel, refs); sql->type = Q_SCHEMA; break; case ddl_create_table: diff --git a/sql/backends/monet5/sql.c b/sql/backends/monet5/sql.c --- a/sql/backends/monet5/sql.c +++ b/sql/backends/monet5/sql.c @@ -6207,13 +6207,13 @@ static mel_func sql_init_funcs[] = { pattern("wlr", "alter_seq", WLRgeneric, false, "Catalog operation alter_seq", args(0,3, arg("sname",str),arg("seqname",str),arg("val",lng))), pattern("wlr", "alter_seq", WLRgeneric, false, "Catalog operation alter_seq", args(0,4, arg("sname",str),arg("seqname",str),arg("seq",ptr),batarg("val",lng))), pattern("wlr", "drop_seq", WLRgeneric, false, "Catalog operation drop_seq", args(0,3, arg("sname",str),arg("nme",str),arg("action",int))), - pattern("wlr", "create_schema", WLRgeneric, false, "Catalog operation create_schema", args(0,4, arg("sname",str),arg("auth",str),arg("ifnotexists",int),arg("action",int))), - pattern("wlr", "drop_schema", WLRgeneric, false, "Catalog operation drop_schema", args(0,4, arg("sname",str),arg("s",str),arg("ifexists",int),arg("action",int))), + pattern("wlr", "create_schema", WLRgeneric, false, "Catalog operation create_schema", args(0,3, arg("sname",str),arg("auth",str),arg("action",int))), + pattern("wlr", "drop_schema", WLRgeneric, false, "Catalog operation drop_schema", args(0,3, arg("sname",str),arg("ifexists",int),arg("action",int))), pattern("wlr", "create_table", WLRgeneric, false, "Catalog operation create_table", args(0,3, arg("sname",str),arg("tname",str),arg("temp",int))), pattern("wlr", "create_view", WLRgeneric, false, "Catalog operation create_view", args(0,3, arg("sname",str),arg("tname",str),arg("temp",int))), pattern("wlr", "drop_table", WLRgeneric, false, "Catalog operation drop_table", args(0,4, arg("sname",str),arg("name",str),arg("action",int),arg("ifexists",int))), pattern("wlr", "drop_view", WLRgeneric, false, "Catalog operation drop_view", args(0,4, arg("sname",str),arg("name",str),arg("action",int),arg("ifexists",int))), - pattern("wlr", "drop_constraint", WLRgeneric, false, "Catalog operation drop_constraint", args(0,4, arg("sname",str),arg("name",str),arg("action",int),arg("ifexists",int))), + pattern("wlr", "drop_constraint", WLRgeneric, false, "Catalog operation drop_constraint", args(0,5, arg("sname",str),arg("tname",str),arg("name",str),arg("action",int),arg("ifexists",int))), pattern("wlr", "alter_table", WLRgeneric, false, "Catalog operation alter_table", args(0,3, arg("sname",str),arg("tname",str),arg("action",int))), pattern("wlr", "create_type", WLRgeneric, false, "Catalog operation create_type", args(0,3, arg("sname",str),arg("nme",str),arg("impl",str))), pattern("wlr", "drop_type", WLRgeneric, false, "Catalog operation drop_type", args(0,3, arg("sname",str),arg("nme",str),arg("action",int))), @@ -6256,13 +6256,13 @@ static mel_func sql_init_funcs[] = { pattern("sqlcatalog", "alter_seq", SQLalter_seq, false, "Catalog operation alter_seq", args(0,4, arg("sname",str),arg("seqname",str),arg("seq",ptr),arg("val",lng))), pattern("sqlcatalog", "alter_seq", SQLalter_seq, false, "Catalog operation alter_seq", args(0,4, arg("sname",str),arg("seqname",str),arg("seq",ptr),batarg("val",lng))), pattern("sqlcatalog", "drop_seq", SQLdrop_seq, false, "Catalog operation drop_seq", args(0,3, arg("sname",str),arg("nme",str),arg("action",int))), - pattern("sqlcatalog", "create_schema", SQLcreate_schema, false, "Catalog operation create_schema", args(0,4, arg("sname",str),arg("auth",str),arg("ifnotexists",int),arg("action",int))), - pattern("sqlcatalog", "drop_schema", SQLdrop_schema, false, "Catalog operation drop_schema", args(0,4, arg("sname",str),arg("s",str),arg("ifexists",int),arg("action",int))), + pattern("sqlcatalog", "create_schema", SQLcreate_schema, false, "Catalog operation create_schema", args(0,3, arg("sname",str),arg("auth",str),arg("action",int))), + pattern("sqlcatalog", "drop_schema", SQLdrop_schema, false, "Catalog operation drop_schema", args(0,3, arg("sname",str),arg("ifexists",int),arg("action",int))), pattern("sqlcatalog", "create_table", SQLcreate_table, false, "Catalog operation create_table", args(0,4, arg("sname",str),arg("tname",str),arg("tbl",ptr),arg("temp",int))), pattern("sqlcatalog", "create_view", SQLcreate_view, false, "Catalog operation create_view", args(0,4, arg("sname",str),arg("vname",str),arg("tbl",ptr),arg("temp",int))), pattern("sqlcatalog", "drop_table", SQLdrop_table, false, "Catalog operation drop_table", args(0,4, arg("sname",str),arg("name",str),arg("action",int),arg("ifexists",int))), pattern("sqlcatalog", "drop_view", SQLdrop_view, false, "Catalog operation drop_view", args(0,4, arg("sname",str),arg("name",str),arg("action",int),arg("ifexists",int))), - pattern("sqlcatalog", "drop_constraint", SQLdrop_constraint, false, "Catalog operation drop_constraint", args(0,4, arg("sname",str),arg("name",str),arg("action",int),arg("ifexists",int))), + pattern("sqlcatalog", "drop_constraint", SQLdrop_constraint, false, "Catalog operation drop_constraint", args(0,5, arg("sname",str),arg("tname",str),arg("name",str),arg("action",int),arg("ifexists",int))), pattern("sqlcatalog", "alter_table", SQLalter_table, false, "Catalog operation alter_table", args(0,4, arg("sname",str),arg("tname",str),arg("tbl",ptr),arg("action",int))), pattern("sqlcatalog", "create_type", SQLcreate_type, false, "Catalog operation create_type", args(0,3, arg("sname",str),arg("nme",str),arg("impl",str))), pattern("sqlcatalog", "drop_type", SQLdrop_type, false, "Catalog operation drop_type", args(0,3, arg("sname",str),arg("nme",str),arg("action",int))), diff --git a/sql/backends/monet5/sql_cat.c b/sql/backends/monet5/sql_cat.c --- a/sql/backends/monet5/sql_cat.c +++ b/sql/backends/monet5/sql_cat.c @@ -597,20 +597,25 @@ drop_view(mvc *sql, char *sname, char *t } static str -drop_key(mvc *sql, char *sname, char *kname, int drop_action) +drop_key(mvc *sql, char *sname, char *tname, char *kname, int drop_action) { _______________________________________________ checkin-list mailing list checkin-list@monetdb.org https://www.monetdb.org/mailman/listinfo/checkin-list