Changeset: 0f97614b1db8 for MonetDB URL: https://dev.monetdb.org/hg/MonetDB/rev/0f97614b1db8 Branch: default Log Message:
merge diffs (88 lines): diff --git a/monetdb5/mal/mal_profiler.c b/monetdb5/mal/mal_profiler.c --- a/monetdb5/mal/mal_profiler.c +++ b/monetdb5/mal/mal_profiler.c @@ -209,6 +209,10 @@ prepareProfilerEvent(Client cntxt, MalBl if(malprofileruser!= MAL_ADMIN && malprofileruser != cntxt->user) return NULL; +/* align the variable namings with EXPLAIN and TRACE */ + if( pci->pc == 1 && start) + renameVariables(mb); + logbuf = (struct logbuf) {0}; usec= pci->clock; diff --git a/monetdb5/modules/mal/profiler.c b/monetdb5/modules/mal/profiler.c --- a/monetdb5/modules/mal/profiler.c +++ b/monetdb5/modules/mal/profiler.c @@ -90,6 +90,7 @@ CMDstartTrace(Client cntxt, MalBlkPtr mb (void) mb; (void) stk; (void) pci; + renameVariables(mb); // to keep in sink with explain return startTrace(cntxt); } diff --git a/monetdb5/optimizer/opt_dataflow.c b/monetdb5/optimizer/opt_dataflow.c --- a/monetdb5/optimizer/opt_dataflow.c +++ b/monetdb5/optimizer/opt_dataflow.c @@ -417,15 +417,21 @@ OPTdataflowImplementation(Client cntxt, // collect BAT variables garbage collected within the block if( !simple) for( k=q->retc; k<q->argc; k++){ - if (getState(states,q,k) & VAR2READ && getEndScope(mb,getArg(q,k)) == j && isaBatType(getVarType(mb,getArg(q,k))) ) - top = dflowGarbagesink(cntxt, mb, getArg(q,k), sink, top); + if (getState(states,q,k) & VAR2READ && getEndScope(mb,getArg(q,k)) == j && isaBatType(getVarType(mb,getArg(q,k))) ){ + InstrPtr r; + top = dflowGarbagesink(cntxt, mb, getArg(q,k), sink, top); + r = newInstruction(NULL,languageRef, passRef); + getArg(r,0) = newTmpVariable(mb,TYPE_void); + r= addArgument(mb,r, getArg(q,k)); + pushInstruction(mb,r); + } } } /* exit parallel block */ if ( ! simple){ // force the pending final garbage statements - for( j=0; j<top; j++) - pushInstruction(mb,sink[j]); + //for( j=0; j<top; j++) + //pushInstruction(mb,sink[j]); q= newAssignment(mb); q->barrier= EXITsymbol; getArg(q,0) = flowblock; diff --git a/sql/backends/monet5/sql_execute.c b/sql/backends/monet5/sql_execute.c --- a/sql/backends/monet5/sql_execute.c +++ b/sql/backends/monet5/sql_execute.c @@ -189,6 +189,7 @@ SQLsetTrace(Client cntxt, MalBlkPtr mb) pushEndInstruction(mb); if( msg == MAL_SUCCEED) msg = chkTypes(cntxt->usermodule, mb, TRUE); + renameVariables(mb); return msg; } diff --git a/sql/test/Tests/setoptimizer.test b/sql/test/Tests/setoptimizer.test --- a/sql/test/Tests/setoptimizer.test +++ b/sql/test/Tests/setoptimizer.test @@ -29,7 +29,7 @@ query TTT nosort select * from optimizers() ---- minimal_pipe -optimizer.inline();optimizer.remap();optimizer.bincopyfrom();optimizer.deadcode();optimizer.multiplex();optimizer.generator();optimizer.garbageCollector(); +optimizer.inline();optimizer.remap();optimizer.bincopyfrom();optimizer.deadcode();optimizer.multiplex();optimizer.generator();optimizer.profiler();optimizer.garbageCollector(); stable minimal_fast optimizer.minimalfast() diff --git a/testing/Mz.py.in b/testing/Mz.py.in --- a/testing/Mz.py.in +++ b/testing/Mz.py.in @@ -13,6 +13,7 @@ # which OUT/ERR differ or not and which tests were skipped. # dump HTML-stuff only at end # print an ascii summary at end, too +# - use sorting in .explain.functions_histogram # - if no diffs, but warnings, say so at end # - produce, keep & reference LOG # - add a "grep-like" function and replace "inlined" grep _______________________________________________ checkin-list mailing list checkin-list@monetdb.org https://www.monetdb.org/mailman/listinfo/checkin-list