Changeset: df1239ee6ffb for MonetDB URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=df1239ee6ffb Modified Files: clients/Tests/exports.stable.out geom/monetdb5/geom.c monetdb5/mal/mal_interpreter.c monetdb5/mal/mal_runtime.c monetdb5/mal/mal_runtime.h sql/test/leaks/Tests/check1.stable.out sql/test/leaks/Tests/check1.stable.out.int128 sql/test/leaks/Tests/check2.stable.out sql/test/leaks/Tests/check2.stable.out.int128 sql/test/leaks/Tests/check3.stable.out sql/test/leaks/Tests/check3.stable.out.int128 sql/test/leaks/Tests/check4.stable.out sql/test/leaks/Tests/check4.stable.out.int128 sql/test/leaks/Tests/check5.stable.out sql/test/leaks/Tests/check5.stable.out.int128 sql/test/leaks/Tests/drop3.stable.out sql/test/leaks/Tests/drop3.stable.out.int128 sql/test/leaks/Tests/select1.stable.out.int128 sql/test/leaks/Tests/select2.stable.out.int128 sql/test/leaks/Tests/temp1.stable.out sql/test/leaks/Tests/temp1.stable.out.int128 sql/test/leaks/Tests/temp2.stable.out sql/test/leaks/Tests/temp2.stable.out.int128 sql/test/leaks/Tests/temp3.stable.out sql/test/leaks/Tests/temp3.stable.out.int128 testing/process.py Branch: default Log Message:
Merge with Dec2016 diffs (truncated from 1312 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 @@ -2453,7 +2453,7 @@ str runMALsequence(Client cntxt, MalBlkP str runScenario(Client c); void runtimeProfileBegin(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr pci, RuntimeProfile prof); void runtimeProfileExit(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr pci, RuntimeProfile prof); -void runtimeProfileFinish(Client cntxt, MalBlkPtr mb); +void runtimeProfileFinish(Client cntxt, MalBlkPtr mb, MalStkPtr stk); void runtimeProfileInit(Client cntxt, MalBlkPtr mb, MalStkPtr stk); int safetyBarrier(InstrPtr p, InstrPtr q); str sampleRef; diff --git a/geom/monetdb5/geom.c b/geom/monetdb5/geom.c --- a/geom/monetdb5/geom.c +++ b/geom/monetdb5/geom.c @@ -2645,14 +2645,6 @@ wkbMLineStringToPolygon(wkb **geomWKB, s } } - //print areas - for (i = 0; i < itemsNum; i++) { - char *toStr = NULL; - int len = 0; - wkbTOSTR(&toStr, &len, linestringsWKB[i]); - GDKfree(toStr); - } - if (*flag == 0) { //the biggest polygon is the external shell GEOSCoordSeq coordSeq_external; diff --git a/monetdb5/mal/mal_interpreter.c b/monetdb5/mal/mal_interpreter.c --- a/monetdb5/mal/mal_interpreter.c +++ b/monetdb5/mal/mal_interpreter.c @@ -479,6 +479,7 @@ str runMALsequence(Client cntxt, MalBlkP int stkpc = 0; RuntimeProfileRecord runtimeProfile, runtimeProfileFunction; lng lastcheck = 0; + int startedProfileQueue = 0; #define CHECKINTERVAL 1000 /* how often do we check for client disconnect */ runtimeProfile.ticks = runtimeProfileFunction.ticks = 0; @@ -519,6 +520,7 @@ str runMALsequence(Client cntxt, MalBlkP /* also produce event record for start of function */ if ( startpc == 1 && startpc < mb->stop ){ + startedProfileQueue = 1; runtimeProfileInit(cntxt, mb, stk); runtimeProfileBegin(cntxt, mb, stk, getInstrPtr(mb,0), &runtimeProfileFunction); mb->starttime = GDKusec(); @@ -769,7 +771,6 @@ str runMALsequence(Client cntxt, MalBlkP ret = shutdownFactory(cntxt, mb); runtimeProfileExit(cntxt, mb, stk, pci, &runtimeProfile); runtimeProfileExit(cntxt, mb, stk, getInstrPtr(mb,0), &runtimeProfileFunction); - runtimeProfileFinish(cntxt, mb); if (pcicaller && garbageControl(getInstrPtr(mb, 0))) garbageCollector(cntxt, mb, stk, TRUE); if (cntxt->qtimeout && GDKusec()- mb->starttime > cntxt->qtimeout){ @@ -802,8 +803,6 @@ str runMALsequence(Client cntxt, MalBlkP if( mb->stop <= 1) continue; runtimeProfileExit(cntxt, mb, stk, pci, &runtimeProfile); - if (ret != MAL_SUCCEED) - runtimeProfileFinish(cntxt, mb); /* check for strong debugging after each MAL statement */ if ( pci->token != FACcall && ret== MAL_SUCCEED) { for (i = 0; i < pci->retc; i++) { @@ -1141,7 +1140,6 @@ str runMALsequence(Client cntxt, MalBlkP if (stkpc == mb->stop) { runtimeProfileExit(cntxt, mb, stk, pci, &runtimeProfile); runtimeProfileExit(cntxt, mb, stk, getInstrPtr(mb,0), &runtimeProfileFunction); - runtimeProfileFinish(cntxt, mb); break; } if (stkpc == mb->stop) @@ -1149,6 +1147,8 @@ str runMALsequence(Client cntxt, MalBlkP "Exception raised"); break; case YIELDsymbol: /* to be defined */ + if( startedProfileQueue) + runtimeProfileFinish(cntxt, mb, stk); if ( backup != backups) GDKfree(backup); if ( garbage != garbages) GDKfree(garbage); return yieldFactory(mb, pci, stkpc); @@ -1175,7 +1175,6 @@ str runMALsequence(Client cntxt, MalBlkP /* reset the clock */ runtimeProfileExit(cntxt, mb, stk, pp, &runtimeProfile); runtimeProfileExit(cntxt, mb, stk, getInstrPtr(mb,0), &runtimeProfileFunction); - runtimeProfileFinish(cntxt, mb); } } stkpc = mb->stop; @@ -1209,6 +1208,8 @@ str runMALsequence(Client cntxt, MalBlkP } freeException(oldret); } + if( startedProfileQueue) + runtimeProfileFinish(cntxt, mb, stk); if ( backup != backups) GDKfree(backup); if ( garbage != garbages) GDKfree(garbage); return ret; diff --git a/monetdb5/mal/mal_runtime.c b/monetdb5/mal/mal_runtime.c --- a/monetdb5/mal/mal_runtime.c +++ b/monetdb5/mal/mal_runtime.c @@ -101,6 +101,7 @@ runtimeProfileFinish(Client cntxt, MalBl int i,j; (void) cntxt; + (void) mb; MT_lock_set(&mal_delayLock); for( i=j=0; i< qtop; i++) diff --git a/monetdb5/mal/mal_runtime.h b/monetdb5/mal/mal_runtime.h --- a/monetdb5/mal/mal_runtime.h +++ b/monetdb5/mal/mal_runtime.h @@ -28,7 +28,7 @@ typedef struct QRYQUEUE{ Client cntxt; MalBlkPtr mb; MalStkPtr stk; - lng tag; + int tag; str query; str status; lng start; diff --git a/sql/test/leaks/Tests/check1.stable.out b/sql/test/leaks/Tests/check1.stable.out --- a/sql/test/leaks/Tests/check1.stable.out +++ b/sql/test/leaks/Tests/check1.stable.out @@ -157,6 +157,16 @@ Ready. [ "lng", 0 ] [ "lng", 0 ] [ "lng", 0 ] +[ "lng", 0 ] +[ "lng", 0 ] +[ "lng", 0 ] +[ "lng", 0 ] +[ "lng", 0 ] +[ "lng", 0 ] +[ "lng", 0 ] +[ "lng", 0 ] +[ "lng", 0 ] +[ "lng", 0 ] [ "lng", 1 ] [ "oid", 0 ] [ "oid", 0 ] @@ -310,7 +320,7 @@ Ready. % L2, L5 # name % char, bigint # type % 10, 3 # length -[ "persistent", 266 ] +[ "persistent", 291 ] # 16:21:16 > # 16:21:16 > "Done." diff --git a/sql/test/leaks/Tests/check1.stable.out.int128 b/sql/test/leaks/Tests/check1.stable.out.int128 --- a/sql/test/leaks/Tests/check1.stable.out.int128 +++ b/sql/test/leaks/Tests/check1.stable.out.int128 @@ -41,8 +41,8 @@ Ready. [ "bit", 0 ] [ "bit", 0 ] [ "bit", 5 ] -[ "bit", 56 ] -[ "bit", 383 ] +[ "bit", 61 ] +[ "bit", 393 ] [ "bit", 1722 ] [ "bit", 1722 ] [ "bit", 1722 ] @@ -88,37 +88,38 @@ Ready. [ "int", 5 ] [ "int", 5 ] [ "int", 5 ] -[ "int", 13 ] -[ "int", 13 ] -[ "int", 13 ] -[ "int", 13 ] -[ "int", 13 ] -[ "int", 13 ] -[ "int", 13 ] -[ "int", 13 ] -[ "int", 32 ] -[ "int", 32 ] +[ "int", 17 ] +[ "int", 23 ] +[ "int", 23 ] +[ "int", 23 ] +[ "int", 23 ] +[ "int", 23 ] +[ "int", 23 ] +[ "int", 23 ] +[ "int", 23 ] [ "int", 36 ] [ "int", 36 ] [ "int", 36 ] [ "int", 36 ] [ "int", 36 ] [ "int", 36 ] -[ "int", 56 ] -[ "int", 56 ] -[ "int", 256 ] +[ "int", 52 ] +[ "int", 52 ] +[ "int", 61 ] +[ "int", 61 ] +[ "int", 281 ] [ "int", 291 ] [ "int", 291 ] [ "int", 291 ] [ "int", 291 ] [ "int", 291 ] -[ "int", 374 ] -[ "int", 374 ] -[ "int", 383 ] -[ "int", 383 ] -[ "int", 383 ] -[ "int", 383 ] -[ "int", 383 ] +[ "int", 389 ] +[ "int", 389 ] +[ "int", 393 ] +[ "int", 393 ] +[ "int", 393 ] +[ "int", 393 ] +[ "int", 393 ] [ "int", 1722 ] [ "int", 1722 ] [ "int", 1722 ] @@ -157,6 +158,16 @@ Ready. [ "lng", 0 ] [ "lng", 0 ] [ "lng", 0 ] +[ "lng", 0 ] +[ "lng", 0 ] +[ "lng", 0 ] +[ "lng", 0 ] +[ "lng", 0 ] +[ "lng", 0 ] +[ "lng", 0 ] +[ "lng", 0 ] +[ "lng", 0 ] +[ "lng", 0 ] [ "lng", 1 ] [ "oid", 0 ] [ "oid", 0 ] @@ -198,18 +209,27 @@ Ready. [ "oid", 0 ] [ "oid", 0 ] [ "oid", 0 ] +[ "oid", 0 ] +[ "oid", 0 ] +[ "oid", 0 ] +[ "oid", 0 ] +[ "oid", 0 ] [ "sht", 0 ] [ "sht", 0 ] [ "sht", 0 ] [ "sht", 0 ] [ "sht", 0 ] [ "sht", 0 ] +[ "sht", 3 ] +[ "sht", 6 ] +[ "sht", 7 ] +[ "sht", 8 ] [ "sht", 10 ] [ "sht", 15 ] -[ "sht", 56 ] -[ "sht", 56 ] -[ "sht", 56 ] -[ "sht", 374 ] +[ "sht", 61 ] +[ "sht", 61 ] +[ "sht", 61 ] +[ "sht", 389 ] [ "str", 0 ] [ "str", 0 ] [ "str", 0 ] @@ -273,22 +293,27 @@ Ready. [ "str", 1 ] [ "str", 1 ] [ "str", 3 ] +[ "str", 3 ] [ "str", 5 ] +[ "str", 6 ] +[ "str", 7 ] +[ "str", 8 ] [ "str", 10 ] -[ "str", 13 ] -[ "str", 13 ] [ "str", 15 ] -[ "str", 32 ] +[ "str", 17 ] +[ "str", 23 ] +[ "str", 23 ] [ "str", 36 ] [ "str", 36 ] -[ "str", 56 ] -[ "str", 56 ] +[ "str", 52 ] +[ "str", 61 ] +[ "str", 61 ] [ "str", 218 ] -[ "str", 256 ] _______________________________________________ checkin-list mailing list checkin-list@monetdb.org https://www.monetdb.org/mailman/listinfo/checkin-list