Changeset: 93a37286a49a for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=93a37286a49a
Modified Files:
clients/Tests/exports.stable.out
monetdb5/extras/mal_optimizer_template/opt_sql_append.c
monetdb5/mal/Tests/All
monetdb5/mal/Tests/flowchk.stable.err
monetdb5/mal/Tests/tst003.stable.err
monetdb5/mal/Tests/tst007.malC
monetdb5/mal/Tests/tst007.stable.err
monetdb5/mal/Tests/tst008.stable.err
monetdb5/mal/Tests/tst010.stable.err
monetdb5/mal/Tests/tst013.stable.err
monetdb5/mal/Tests/tst019.stable.err
monetdb5/mal/Tests/tst038.stable.err
monetdb5/mal/Tests/tst050.stable.err
monetdb5/mal/Tests/tst054.stable.err
monetdb5/mal/Tests/tst108.stable.err
monetdb5/mal/Tests/tst109.stable.err
monetdb5/mal/Tests/tst275.stable.out
monetdb5/mal/Tests/tst755.stable.err
monetdb5/mal/Tests/tst760.stable.err
monetdb5/mal/Tests/tst804.stable.err
monetdb5/mal/Tests/tst900.stable.err
monetdb5/mal/mal_debugger.c
monetdb5/mal/mal_function.c
monetdb5/mal/mal_function.h
monetdb5/mal/mal_instruction.c
monetdb5/mal/mal_parser.c
monetdb5/mal/mal_resolve.c
monetdb5/mal/mal_resolve.h
monetdb5/mal/mal_session.c
monetdb5/modules/mal/Tests/mapi06.stable.err
monetdb5/modules/mal/orderidx.c
monetdb5/modules/mal/remote.c
monetdb5/optimizer/opt_aliases.c
monetdb5/optimizer/opt_candidates.c
monetdb5/optimizer/opt_coercion.c
monetdb5/optimizer/opt_commonTerms.c
monetdb5/optimizer/opt_constants.c
monetdb5/optimizer/opt_costModel.c
monetdb5/optimizer/opt_dataflow.c
monetdb5/optimizer/opt_deadcode.c
monetdb5/optimizer/opt_emptybind.c
monetdb5/optimizer/opt_evaluate.c
monetdb5/optimizer/opt_garbageCollector.c
monetdb5/optimizer/opt_generator.c
monetdb5/optimizer/opt_inline.c
monetdb5/optimizer/opt_jit.c
monetdb5/optimizer/opt_json.c
monetdb5/optimizer/opt_macro.c
monetdb5/optimizer/opt_matpack.c
monetdb5/optimizer/opt_mergetable.c
monetdb5/optimizer/opt_mitosis.c
monetdb5/optimizer/opt_multiplex.c
monetdb5/optimizer/opt_oltp.c
monetdb5/optimizer/opt_postfix.c
monetdb5/optimizer/opt_profiler.c
monetdb5/optimizer/opt_projectionpath.c
monetdb5/optimizer/opt_pushselect.c
monetdb5/optimizer/opt_querylog.c
monetdb5/optimizer/opt_reduce.c
monetdb5/optimizer/opt_remap.c
monetdb5/optimizer/opt_remoteQueries.c
monetdb5/optimizer/opt_reorder.c
monetdb5/optimizer/opt_support.c
monetdb5/optimizer/opt_volcano.c
monetdb5/optimizer/opt_wlc.c
monetdb5/optimizer/opt_wrapper.c
monetdb5/scheduler/run_adder.c
sql/backends/monet5/sql_execute.c
sql/backends/monet5/sql_gencode.c
sql/backends/monet5/sql_optimizer.c
sql/backends/monet5/sql_scenario.c
sql/backends/monet5/wlr.c
sql/test/BugTracker-2019/Tests/set-schema-mclient-msg.Bug-6754.stable.out
Branch: default
Log Message:
backport of changsets 72192 72206 72213 72214 72219
diffs (truncated from 1932 to 300 lines):
diff --git a/clients/Tests/exports.stable.out b/clients/Tests/exports.stable.out
--- a/clients/Tests/exports.stable.out
+++ b/clients/Tests/exports.stable.out
@@ -1902,7 +1902,7 @@ str URLgetProtocol(str *retval, url *tv)
str URLgetQuery(str *retval, url *tv);
str URLgetRobotURL(str *retval, url *tv);
str URLgetUser(str *retval, url *tv);
-str URLisaURL(bit *retval, url *tv);
+str URLisaURL(bit *retval, str *tv);
str URLnew(url *u, str *val);
str URLnew3(url *u, str *protocol, str *server, str *file);
str URLnew4(url *u, str *protocol, str *server, int *port, str *file);
@@ -2043,11 +2043,11 @@ str callMAL(Client cntxt, MalBlkPtr mb,
str callString(Client c, str s, int listing);
str capiRef;
str catalogRef;
-void chkDeclarations(MalBlkPtr mb);
-void chkFlow(MalBlkPtr mb);
+str chkDeclarations(MalBlkPtr mb);
+str chkFlow(MalBlkPtr mb);
int chkInstruction(Module s, MalBlkPtr mb, InstrPtr p);
-void chkProgram(Module s, MalBlkPtr mb);
-void chkTypes(Module s, MalBlkPtr mb, int silent);
+str chkProgram(Module s, MalBlkPtr mb);
+str chkTypes(Module s, MalBlkPtr mb, int silent);
str cleanupTraces(Client cntxt);
void clearStack(MalStkPtr s);
void clearTrace(Client cntxt);
diff --git a/monetdb5/extras/mal_optimizer_template/opt_sql_append.c
b/monetdb5/extras/mal_optimizer_template/opt_sql_append.c
--- a/monetdb5/extras/mal_optimizer_template/opt_sql_append.c
+++ b/monetdb5/extras/mal_optimizer_template/opt_sql_append.c
@@ -296,7 +296,7 @@ str OPTsql_append(Client cntxt, MalBlkPt
/* Defense line against incorrect plans */
chkTypes(cntxt->usermodule, mb, FALSE);
chkFlow(mb);
- chkDeclarations(mb);
+ if( msg == MAL_SUCCEED) msg = chkDeclarations(mb);
#ifdef DEBUG_OPT_OPTIMIZERS
mnstr_printf(cntxt->fdout,"=FINISHED sql_append %d\n",actions);
printFunction(cntxt->fdout,mb,0,LIST_MAL_ALL );
diff --git a/monetdb5/mal/Tests/All b/monetdb5/mal/Tests/All
--- a/monetdb5/mal/Tests/All
+++ b/monetdb5/mal/Tests/All
@@ -95,6 +95,13 @@ tst161
tst163
tst1604
tst171
+tst190
+tst191
+tst192
+tst193
+tst194
+tst195
+tst196
tst200
tst201
tst202
diff --git a/monetdb5/mal/Tests/flowchk.stable.err
b/monetdb5/mal/Tests/flowchk.stable.err
--- a/monetdb5/mal/Tests/flowchk.stable.err
+++ b/monetdb5/mal/Tests/flowchk.stable.err
@@ -77,8 +77,7 @@ QUERY = function tst();
exit go;
c:=a;
end tst;
-ERROR = !TypeException:user.tst[5]:'a' may not be used before being initialized
-
+ERROR = !MALException:user.tst:'a' may not be used before being initialized
# 07:33:12 >
# 07:33:12 > "Done."
diff --git a/monetdb5/mal/Tests/tst003.stable.err
b/monetdb5/mal/Tests/tst003.stable.err
--- a/monetdb5/mal/Tests/tst003.stable.err
+++ b/monetdb5/mal/Tests/tst003.stable.err
@@ -37,8 +37,7 @@ QUERY = # test illegal variable use
a:=b; #b not yet defined
b:=c; #c undefined
end foo;
-ERROR = !TypeException:user.foo[1]:'b' may not be used before being initialized
- !TypeException:user.foo[3]:'c' may not be used before being initialized
+ERROR = !MALException:user.foo:'b' may not be used before being initialized
# 22:10:36 >
# 22:10:36 > "Done."
diff --git a/monetdb5/mal/Tests/tst007.malC b/monetdb5/mal/Tests/tst007.malC
--- a/monetdb5/mal/Tests/tst007.malC
+++ b/monetdb5/mal/Tests/tst007.malC
@@ -18,7 +18,7 @@ exit (h,t);
#een do-while loop
entry:= true;
-barrier M:= entry_or_exittest;
+barrier M:= entry_or_exit;
entry:= false;
# rest
redo M;
diff --git a/monetdb5/mal/Tests/tst007.stable.err
b/monetdb5/mal/Tests/tst007.stable.err
--- a/monetdb5/mal/Tests/tst007.stable.err
+++ b/monetdb5/mal/Tests/tst007.stable.err
@@ -51,7 +51,7 @@ QUERY = # A collection of forloops, whic
#een do-while loop
entry:= true;
- barrier M:= entry_or_exittest;
+ barrier M:= entry_or_exit;
entry:= false;
# rest
redo M;
@@ -80,7 +80,8 @@ QUERY = # A collection of forloops, whic
exit FS;
end foo;
-ERROR = !TypeException:user.foo[16]:'entry_or_exittest' may not be used before
being initialized
+ERROR = !MALException:user.foo:'entry_or_exit' may not be used before being
initialized
+
# 13:48:22 >
# 13:48:22 > "Done."
diff --git a/monetdb5/mal/Tests/tst008.stable.err
b/monetdb5/mal/Tests/tst008.stable.err
--- a/monetdb5/mal/Tests/tst008.stable.err
+++ b/monetdb5/mal/Tests/tst008.stable.err
@@ -38,7 +38,6 @@ QUERY = function foo();
end foo;
ERROR = !SyntaxException:parseError:io.printi;
!SyntaxException:parseError: ^'(' expected
- !TypeException:user.foo[2]:'io.printi' undefined in: io.printi();
# 10:46:01 >
diff --git a/monetdb5/mal/Tests/tst010.stable.err
b/monetdb5/mal/Tests/tst010.stable.err
--- a/monetdb5/mal/Tests/tst010.stable.err
+++ b/monetdb5/mal/Tests/tst010.stable.err
@@ -69,16 +69,7 @@ QUERY = # syntax analysis test for guard
f:=1;
end;
end foo;
-ERROR = !MALException:user.foo[3]:label 'Z' not in guarded block
- !MALException:user.foo[7]:label 'L' not in guarded block
- !MALException:user.foo[9]:label 'X' not in guarded block
- !MALException:user.foo[11]:label 'A' not in guarded block
- !MALException:user.foo[14]:label 'L' not in guarded block
- !MALException:user.foo[17]:label 'L' not in guarded block
- !MALException:user.foo[27]:exit-label 'B' doesnot match 'A'
- !MALException:user.foo[29]:exit-label 'F' without begin-label
- !MALException:user.foo[39]:exit-label 'A' without begin-label
- !SyntaxException:parseError:end foo;
+ERROR = !MALException:user.foo:label 'Z' not in guarded
blockSyntaxException:parseError:end foo;
!SyntaxException:parseError: ^non matching end label
# 10:57:17 >
diff --git a/monetdb5/mal/Tests/tst013.stable.err
b/monetdb5/mal/Tests/tst013.stable.err
--- a/monetdb5/mal/Tests/tst013.stable.err
+++ b/monetdb5/mal/Tests/tst013.stable.err
@@ -46,8 +46,7 @@ QUERY = # incomplete barrier blocks. Res
exit t;
redo;
exit;
-ERROR = !MALException:user.main[3]:label 'X_2' not in guarded block
- !MALException:user.main[14]:label 't' not in guarded block
+ERROR = !MALException:user.main:label 'X_2' not in guarded block
# 13:20:00 >
# 13:20:00 > "Done."
diff --git a/monetdb5/mal/Tests/tst019.stable.err
b/monetdb5/mal/Tests/tst019.stable.err
--- a/monetdb5/mal/Tests/tst019.stable.err
+++ b/monetdb5/mal/Tests/tst019.stable.err
@@ -76,11 +76,8 @@ QUERY = function welcome(lim:int):void;
(x,y):= user.welcome2(1);
ERROR = !TypeException:user.welcome[3]:type mismatch void := str
- !TypeException:user.welcome0[3]:Multiple assignment mismatch
- !MALException:user.welcome3[2]:invalid return target!
- !TypeException:user.welcome4[2]:Multiple assignment mismatch
-# 13:48:26 >
-# 13:48:26 > "Done."
-# 13:48:26 >
+# 20:29:52 >
+# 20:29:52 > "Done."
+# 20:29:52 >
diff --git a/monetdb5/mal/Tests/tst038.stable.err
b/monetdb5/mal/Tests/tst038.stable.err
--- a/monetdb5/mal/Tests/tst038.stable.err
+++ b/monetdb5/mal/Tests/tst038.stable.err
@@ -41,7 +41,6 @@ QUERY = #test the capability to deal wit
#The call to tst2 fails at runtime
user.tst2(b);
ERROR = !TypeException:user.tst2[1]:'bat.append' undefined in:
bat.append(b:bat[:int], "hello":str);
- !TypeException:user.main[0]:Error in cloned function
!TypeException:user.main[4]:'user.tst2' undefined in:
user.tst2(b:bat[:int]);
# 11:43:41 >
diff --git a/monetdb5/mal/Tests/tst050.stable.err
b/monetdb5/mal/Tests/tst050.stable.err
--- a/monetdb5/mal/Tests/tst050.stable.err
+++ b/monetdb5/mal/Tests/tst050.stable.err
@@ -56,11 +56,8 @@ QUERY = # Variables names may be tagged
l:flt := "wrong";
end l;
ERROR = !TypeException:user.g[1]:type mismatch sht := lng
- !TypeException:user.h[1]:type mismatch lng := sht
- !TypeException:user.k[1]:'bat.new' undefined in: y:bat[:str] :=
bat.new(:int);
- !TypeException:user.l[1]:type mismatch flt := str
-# 22:14:56 >
-# 22:14:56 > "Done."
-# 22:14:56 >
+# 14:22:43 >
+# 14:22:43 > "Done."
+# 14:22:43 >
diff --git a/monetdb5/mal/Tests/tst054.stable.err
b/monetdb5/mal/Tests/tst054.stable.err
--- a/monetdb5/mal/Tests/tst054.stable.err
+++ b/monetdb5/mal/Tests/tst054.stable.err
@@ -78,7 +78,6 @@ QUERY = function z()( :int,:int,:int,:in
z();
ERROR = !SyntaxException:parseError:return
(1,2,3,4,5,6,7,8,9,0,1,2,3,4,5,6,7,8,9,0,1,2,3,4,5,6,7,8,9,0);
!SyntaxException:parseError: ^<identifier> expected
- !MALException:user.z[2]:invalid return target!
# 11:11:08 >
# 11:11:08 > Done.
diff --git a/monetdb5/mal/Tests/tst108.stable.err
b/monetdb5/mal/Tests/tst108.stable.err
--- a/monetdb5/mal/Tests/tst108.stable.err
+++ b/monetdb5/mal/Tests/tst108.stable.err
@@ -43,9 +43,7 @@ QUERY = # analyse the basic interpreter
redo t;
exit t;
i:= 0;
-ERROR = !MALException:user.main[7]:exit-label 'v' doesnot match 't'
- !MALException:user.main[9]:label 't' not in guarded block
- !MALException:user.main[10]:exit-label 't' without begin-label
+ERROR = !MALException:user.main:exit-label 'v' doesnot match 't'
# 20:43:15 >
# 20:43:15 > "Done."
diff --git a/monetdb5/mal/Tests/tst109.stable.err
b/monetdb5/mal/Tests/tst109.stable.err
--- a/monetdb5/mal/Tests/tst109.stable.err
+++ b/monetdb5/mal/Tests/tst109.stable.err
@@ -44,9 +44,7 @@ QUERY = # Error, illegal block weaveing
redo t;
exit t;
i:= 0;
-ERROR = !MALException:user.main[9]:exit-label 'v' doesnot match 't'
- !MALException:user.main[10]:label 't' not in guarded block
- !MALException:user.main[11]:exit-label 't' without begin-label
+ERROR = !MALException:user.main:exit-label 'v' doesnot match 't'
# 20:43:15 >
# 20:43:15 > "Done."
diff --git a/monetdb5/mal/Tests/tst275.stable.out
b/monetdb5/mal/Tests/tst275.stable.out
--- a/monetdb5/mal/Tests/tst275.stable.out
+++ b/monetdb5/mal/Tests/tst275.stable.out
@@ -33,8 +33,8 @@ stdout of test 'tst275` in directory 'mo
# t t t # name
# void str str # type
#--------------------------#
-[ 0@0, "batId", "tmp_264" ]
-[ 1@0, "batCacheid", "180" ]
+[ 0@0, "batId", "tmp_267" ]
+[ 1@0, "batCacheid", "183" ]
[ 2@0, "tparentid", "0" ]
[ 3@0, "batSharecnt", "0" ]
[ 4@0, "batCount", "0" ]
@@ -69,7 +69,7 @@ stdout of test 'tst275` in directory 'mo
[ 33@0, "tail.size", "1024" ]
[ 34@0, "tail.storage", "malloced" ]
[ 35@0, "tail.newstorage", "malloced" ]
-[ 36@0, "tail.filename", "02/264.tail" ]
+[ 36@0, "tail.filename", "02/267.tail" ]
[ 37@0, "tvheap->dirty", "clean" ]
#~EndVariableOutput~#
#--------------------------#
diff --git a/monetdb5/mal/Tests/tst755.stable.err
b/monetdb5/mal/Tests/tst755.stable.err
--- a/monetdb5/mal/Tests/tst755.stable.err
+++ b/monetdb5/mal/Tests/tst755.stable.err
@@ -42,7 +42,6 @@ QUERY = # Polymorphic function tests
c:= bat.new(:str);
user.test(c,"hello");
ERROR = !TypeException:user.test[1]:'calc.+' undefined in: k:any :=
calc.+(1:int, "wrong":str);
- !TypeException:user.main[0]:Error in cloned function
!TypeException:user.main[5]:'user.test' undefined in:
user.test(c:bat[:str], "hello":str);
# 09:29:50 >
diff --git a/monetdb5/mal/Tests/tst760.stable.err
b/monetdb5/mal/Tests/tst760.stable.err
--- a/monetdb5/mal/Tests/tst760.stable.err
+++ b/monetdb5/mal/Tests/tst760.stable.err
@@ -41,7 +41,6 @@ QUERY = # Polymorphic function tests
c:= bat.new(:str);
user.test(c,"hello");
ERROR = !TypeException:user.test[1]:'calc.+' undefined in: k:any :=
calc.+(1:int, c:str);
- !TypeException:user.main[0]:Error in cloned function
!TypeException:user.main[4]:'user.test' undefined in:
user.test(c:bat[:str], "hello":str);
# 09:29:51 >
diff --git a/monetdb5/mal/Tests/tst804.stable.err
b/monetdb5/mal/Tests/tst804.stable.err
--- a/monetdb5/mal/Tests/tst804.stable.err
+++ b/monetdb5/mal/Tests/tst804.stable.err
@@ -44,7 +44,6 @@ ERROR = !SyntaxException:parseError:func
!SyntaxException:parseError: ^<module> name not
defined
!SyntaxException:parseError:end message;
!SyntaxException:parseError: ^non matching end label
_______________________________________________
checkin-list mailing list
[email protected]
https://www.monetdb.org/mailman/listinfo/checkin-list