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

Reply via email to