Changeset: f0d5d67e6f20 for MonetDB URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=f0d5d67e6f20 Modified Files: clients/Tests/MAL-signatures.stable.out clients/Tests/MAL-signatures.stable.out.int128 clients/Tests/exports.stable.out sql/backends/monet5/sql_gencode.c Branch: default Log Message:
Approve output diffs (172 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 @@ -7921,7 +7921,6 @@ Ready. [ "mdb", "getStackFrame", "pattern mdb.getStackFrame() (X_0:bat[:str],X_1:bat[:str]) ", "MDBgetStackFrame;", "Collect variable binding of current (n-th) stack frame." ] [ "mdb", "getStackFrame", "pattern mdb.getStackFrame(i:int) (X_0:bat[:str],X_1:bat[:str]) ", "MDBgetStackFrameN;", "" ] [ "mdb", "getStackTrace", "pattern mdb.getStackTrace() (X_0:bat[:int],X_1:bat[:str]) ", "MDBStkTrace;", "" ] -[ "mdb", "grab", "pattern mdb.grab():void ", "mdbGrab;", "Call debugger for a suspended process." ] [ "mdb", "inspect", "pattern mdb.inspect(mod:str,fcn:str):void ", "MDBinspect;", "Run the debugger on a specific function" ] [ "mdb", "list", "pattern mdb.list(M:str,F:str):void ", "MDBlist3;", "Dump the routine M.F on standard out." ] [ "mdb", "list", "pattern mdb.list():void ", "MDBlist;", "Dump the current routine on standard out." ] @@ -7932,14 +7931,11 @@ Ready. [ "mdb", "setDebug", "command mdb.setDebug(flg:str):int ", "MDBsetDebugStr;", "Set the kernel debugging bit-set and return its previous value.\nThe recognized options are: threads, memory, properties,\nio, transactions, modules, algorithms, estimates." ] [ "mdb", "setTrace", "pattern mdb.setTrace(b:bit):void ", "MDBsetTrace;", "Turn on/off tracing of current routine" ] [ "mdb", "setTrace", "pattern mdb.setTrace(b:str):void ", "MDBsetVarTrace;", "Turn on/off tracing of a variable " ] -[ "mdb", "setTrap", "pattern mdb.setTrap(mod:str,fcn:str,b:bit):void ", "MDBtrapFunction;", "Suspend upon a call to the MAL function." ] -[ "mdb", "setTrap", "pattern mdb.setTrap(idx:int):void ", "mdbTrapClient;", "Call debugger for a specific process." ] [ "mdb", "start", "pattern mdb.start():void ", "MDBstart;", "Start interactive debugger" ] [ "mdb", "start", "pattern mdb.start(clientid:int):void ", "MDBstart;", "Start interactive debugger on a client" ] [ "mdb", "start", "pattern mdb.start(mod:str,fcn:str):void ", "MDBstartFactory;", "Start interactive debugger on a running factory" ] [ "mdb", "stop", "pattern mdb.stop():void ", "MDBstop;", "Stop the interactive debugger" ] [ "mdb", "traceOptimizer", "command mdb.traceOptimizer(flg:str):void ", "OPTsetDebugStr;", "Otherwise it is considered a request to trace the optimizers,\nwhich requires a comma separated list or pipeline name." ] -[ "mdb", "trap", "pattern mdb.trap():void ", "mdbTrap;", "A suspended process for debugging." ] [ "mdb", "var", "pattern mdb.var(M:str,F:str):void ", "MDBvar3;", "Dump the symboltable of routine M.F on standard out." ] [ "mdb", "var", "pattern mdb.var():void ", "MDBvar;", "Dump the symboltable of current routine on standard out." ] [ "mkey", "bulk_rotate_xor_hash", "command mkey.bulk_rotate_xor_hash(h:bat[:lng],nbits:int,b:bat[:any_1]):bat[:lng] ", "MKEYbulk_rotate_xor_hash;", "pre: h and b should be synced on head\n post: [:xor=]([:rotate=](h, nbits), [hash](b))" ] @@ -8191,9 +8187,6 @@ Ready. [ "optimizer", "reorder", "pattern optimizer.reorder(mod:str,fcn:str):str ", "OPTwrapper;", "Reorder by dataflow dependencies" ] [ "optimizer", "selcrack", "pattern optimizer.selcrack():str ", "OPTwrapper;", "" ] [ "optimizer", "selcrack", "pattern optimizer.selcrack(mod:str,fcn:str):str ", "OPTwrapper;", "Selection cracking" ] -[ "optimizer", "showFlowGraph", "pattern optimizer.showFlowGraph(M:str,F:str,s:str):void ", "QOTshowFlowGraph;", "Dump the data flow of the function \n\tM.F in a format recognizable by the \n\tcommand 'dot' on the file s" ] -[ "optimizer", "showPlan", "pattern optimizer.showPlan():void ", "QOTshowPlan;", "Illustrate the plan derived so far" ] -[ "optimizer", "showPlan", "pattern optimizer.showPlan(M:str,F:str,s:str):void ", "QOTshowPlan;", "" ] [ "optimizer", "sql_append", "pattern optimizer.sql_append():str ", "OPTsql_append;", "Avoid extra BAT copy with sql.append() whenever possible." ] [ "optimizer", "sql_append", "pattern optimizer.sql_append(mod:str,fcn:str):str ", "OPTsql_append;", "Avoid extra BAT copy with sql.append() whenever possible." ] [ "optimizer", "trace", "pattern optimizer.trace():str ", "OPTwrapper;", "" ] 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 @@ -10282,7 +10282,6 @@ Ready. [ "mdb", "getStackFrame", "pattern mdb.getStackFrame() (X_0:bat[:str],X_1:bat[:str]) ", "MDBgetStackFrame;", "Collect variable binding of current (n-th) stack frame." ] [ "mdb", "getStackFrame", "pattern mdb.getStackFrame(i:int) (X_0:bat[:str],X_1:bat[:str]) ", "MDBgetStackFrameN;", "" ] [ "mdb", "getStackTrace", "pattern mdb.getStackTrace() (X_0:bat[:int],X_1:bat[:str]) ", "MDBStkTrace;", "" ] -[ "mdb", "grab", "pattern mdb.grab():void ", "mdbGrab;", "Call debugger for a suspended process." ] [ "mdb", "inspect", "pattern mdb.inspect(mod:str,fcn:str):void ", "MDBinspect;", "Run the debugger on a specific function" ] [ "mdb", "list", "pattern mdb.list(M:str,F:str):void ", "MDBlist3;", "Dump the routine M.F on standard out." ] [ "mdb", "list", "pattern mdb.list():void ", "MDBlist;", "Dump the current routine on standard out." ] @@ -10293,14 +10292,11 @@ Ready. [ "mdb", "setDebug", "command mdb.setDebug(flg:str):int ", "MDBsetDebugStr;", "Set the kernel debugging bit-set and return its previous value.\nThe recognized options are: threads, memory, properties,\nio, transactions, modules, algorithms, estimates." ] [ "mdb", "setTrace", "pattern mdb.setTrace(b:bit):void ", "MDBsetTrace;", "Turn on/off tracing of current routine" ] [ "mdb", "setTrace", "pattern mdb.setTrace(b:str):void ", "MDBsetVarTrace;", "Turn on/off tracing of a variable " ] -[ "mdb", "setTrap", "pattern mdb.setTrap(mod:str,fcn:str,b:bit):void ", "MDBtrapFunction;", "Suspend upon a call to the MAL function." ] -[ "mdb", "setTrap", "pattern mdb.setTrap(idx:int):void ", "mdbTrapClient;", "Call debugger for a specific process." ] [ "mdb", "start", "pattern mdb.start():void ", "MDBstart;", "Start interactive debugger" ] [ "mdb", "start", "pattern mdb.start(clientid:int):void ", "MDBstart;", "Start interactive debugger on a client" ] [ "mdb", "start", "pattern mdb.start(mod:str,fcn:str):void ", "MDBstartFactory;", "Start interactive debugger on a running factory" ] [ "mdb", "stop", "pattern mdb.stop():void ", "MDBstop;", "Stop the interactive debugger" ] [ "mdb", "traceOptimizer", "command mdb.traceOptimizer(flg:str):void ", "OPTsetDebugStr;", "Otherwise it is considered a request to trace the optimizers,\nwhich requires a comma separated list or pipeline name." ] -[ "mdb", "trap", "pattern mdb.trap():void ", "mdbTrap;", "A suspended process for debugging." ] [ "mdb", "var", "pattern mdb.var(M:str,F:str):void ", "MDBvar3;", "Dump the symboltable of routine M.F on standard out." ] [ "mdb", "var", "pattern mdb.var():void ", "MDBvar;", "Dump the symboltable of current routine on standard out." ] [ "mkey", "bulk_rotate_xor_hash", "command mkey.bulk_rotate_xor_hash(h:bat[:lng],nbits:int,b:bat[:any_1]):bat[:lng] ", "MKEYbulk_rotate_xor_hash;", "pre: h and b should be synced on head\n post: [:xor=]([:rotate=](h, nbits), [hash](b))" ] @@ -10553,9 +10549,6 @@ Ready. [ "optimizer", "reorder", "pattern optimizer.reorder(mod:str,fcn:str):str ", "OPTwrapper;", "Reorder by dataflow dependencies" ] [ "optimizer", "selcrack", "pattern optimizer.selcrack():str ", "OPTwrapper;", "" ] [ "optimizer", "selcrack", "pattern optimizer.selcrack(mod:str,fcn:str):str ", "OPTwrapper;", "Selection cracking" ] -[ "optimizer", "showFlowGraph", "pattern optimizer.showFlowGraph(M:str,F:str,s:str):void ", "QOTshowFlowGraph;", "Dump the data flow of the function \n\tM.F in a format recognizable by the \n\tcommand 'dot' on the file s" ] -[ "optimizer", "showPlan", "pattern optimizer.showPlan():void ", "QOTshowPlan;", "Illustrate the plan derived so far" ] -[ "optimizer", "showPlan", "pattern optimizer.showPlan(M:str,F:str,s:str):void ", "QOTshowPlan;", "" ] [ "optimizer", "sql_append", "pattern optimizer.sql_append():str ", "OPTsql_append;", "Avoid extra BAT copy with sql.append() whenever possible." ] [ "optimizer", "sql_append", "pattern optimizer.sql_append(mod:str,fcn:str):str ", "OPTsql_append;", "Avoid extra BAT copy with sql.append() whenever possible." ] [ "optimizer", "trace", "pattern optimizer.trace():str ", "OPTwrapper;", "" ] 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 @@ -1373,7 +1373,6 @@ str MDBgetExceptionReason(str *ret, str str MDBgetExceptionVariable(str *ret, str *msg); str MDBgetStackFrame(Client cntxt, MalBlkPtr m, MalStkPtr s, InstrPtr p); str MDBgetStackFrameN(Client cntxt, MalBlkPtr m, MalStkPtr s, InstrPtr p); -str MDBgrapTrappedProcess(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr pci); str MDBinspect(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr p); str MDBlist(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr p); str MDBlist3(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr p); @@ -1389,7 +1388,6 @@ str MDBshowFlowGraph(Client cntxt, MalBl str MDBstart(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr p); str MDBstartFactory(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr p); str MDBstop(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr p); -str MDBtrapFunction(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr pci); str MDBvar(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr p); str MDBvar3(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr p); str MKEYbathash(bat *res, const bat *bid); @@ -1615,8 +1613,6 @@ int QLOGisset(void); str QLOGissetFcn(int *ret); str QOTgetStatistics(bat *ret, str *nme); str QOToptimize(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr pci); -str QOTshowFlowGraph(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr p); -str QOTshowPlan(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr p); void QOTstatisticsExit(void); void QOTupdateStatistics(str nme, int prop, lng val); QueryQueue QRYqueue; diff --git a/sql/backends/monet5/sql_gencode.c b/sql/backends/monet5/sql_gencode.c --- a/sql/backends/monet5/sql_gencode.c +++ b/sql/backends/monet5/sql_gencode.c @@ -504,8 +504,35 @@ backend_dumpstmt(backend *be, MalBlkPtr getArg(q, 0) = getArg(getInstrPtr(mb, 0), 0); q->barrier = RETURNsymbol; } - if (add_end) + if (add_end){ pushEndInstruction(mb); + } + // Always keep the SQL query around for monitoring + { + char *t, *tt; + InstrPtr q; + + if (be->q && be->q->codestring) { + tt = t = GDKstrdup(be->q->codestring); + while (t && isspace((int) *t)) + t++; + } else { + tt = t = GDKstrdup("-- no query"); + } + + q = newStmt(mb, querylogRef, defineRef); + if (q == NULL) { + GDKfree(tt); + goto cleanup; + } + q->token = REMsymbol; // will be patched + setVarType(mb, getArg(q, 0), TYPE_void); + setVarUDFtype(mb, getArg(q, 0)); + q = pushStr(mb, q, t); + GDKfree(tt); + q = pushStr(mb, q, getSQLoptimizer(be->mvc)); + } +cleanup: return 0; } @@ -610,31 +637,6 @@ backend_dumpproc(backend *be, Client c, if (backend_dumpstmt(be, mb, r, 1, 1) < 0) goto cleanup; - // Always keep the SQL query around for monitoring - { - char *t, *tt; - InstrPtr q; - - if (be->q && be->q->codestring) { - tt = t = GDKstrdup(be->q->codestring); - while (t && isspace((int) *t)) - t++; - } else { - tt = t = GDKstrdup("-- no query"); - } - - q = newStmt(mb, querylogRef, defineRef); - if (q == NULL) { - GDKfree(tt); - goto cleanup; - } - q->token = REMsymbol; // will be patched - setVarType(mb, getArg(q, 0), TYPE_void); - setVarUDFtype(mb, getArg(q, 0)); - q = pushStr(mb, q, t); - GDKfree(tt); - q = pushStr(mb, q, getSQLoptimizer(be->mvc)); - } if (cq){ SQLaddQueryToCache(c); // optimize this code the 'old' way _______________________________________________ checkin-list mailing list checkin-list@monetdb.org https://www.monetdb.org/mailman/listinfo/checkin-list