Changeset: b48038d07e71 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=b48038d07e71
Modified Files:
monetdb5/mal/mal_interpreter.mx
Branch: default
Log Message:
Generate end profiler event
Still to do, proper event after return from MAL function call
diffs (49 lines):
diff --git a/monetdb5/mal/mal_interpreter.mx b/monetdb5/mal/mal_interpreter.mx
--- a/monetdb5/mal/mal_interpreter.mx
+++ b/monetdb5/mal/mal_interpreter.mx
@@ -1625,19 +1625,15 @@ safeguardStack(Client cntxt, MalBlkPtr m
case ENDsymbol:
if (getInstrPtr(mb, 0)->token == FACTORYsymbol)
ret = shutdownFactory(cntxt, mb);
-#if @1
if (oldtimer)
cntxt->timer = oldtimer;
-#endif
if (pcicaller && garbageControl(getInstrPtr(mb, 0)))
garbageCollector(cntxt, mb, stk, TRUE);
-#if @1
runtimeProfileExit(cntxt, mb, stk, &runtimeProfile);
runtimeProfile.ppc = 0; /* also finalize function call event */
runtimeProfileExit(cntxt, mb, stk, &runtimeProfile);
if (cntxt->qtimeout && time(NULL) - stk->clock.tv_usec >
cntxt->qtimeout)
throw(MAL, "mal.interpreter", RUNTIME_QRY_TIMEOUT);
-#endif
stkpc = mb->stop;
continue;
default:
@@ -1647,11 +1643,9 @@ safeguardStack(Client cntxt, MalBlkPtr m
}
ret = createScriptException(mb, stkpc, MAL,
NULL, "unkown operation");
-#if @1
runtimeProfileExit(cntxt, mb, stk, &runtimeProfile);
if (cntxt->qtimeout && time(NULL) - stk->clock.tv_usec >
cntxt->qtimeout)
throw(MAL, "mal.interpreter", RUNTIME_QRY_TIMEOUT);
-#endif
stkpc= mb->stop;
continue;
}
@@ -2243,11 +2237,12 @@ safeguardStack(Client cntxt, MalBlkPtr m
if (lhs->vtype == TYPE_bat)
BBPincref(lhs->val.bval, TRUE);
}
+ runtimeProfileBegin(cntxt, pci->blk, nstk, 0, &runtimeProfile, 1);
ret = runMALsequence(cntxt, pci->blk, 1, pci->blk->stop, nstk, stk,
pci);
GDKfree(nstk);
@:restoreTarget(@1,@3)@
@:exceptionHndlr(@1,@2,@3)@
- runtimeTiming(cntxt, mb, stk, pci, tid, lock, &runtimeProfile);
+ runtimeTiming(cntxt, pci->blk, nstk, 0, tid, lock, &runtimeProfile);
}
@c
/*
_______________________________________________
Checkin-list mailing list
[email protected]
http://mail.monetdb.org/mailman/listinfo/checkin-list