Changeset: ebddb6693948 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=ebddb6693948
Modified Files:
        monetdb5/mal/mal_runtime.c
        monetdb5/mal/mal_runtime.h
        monetdb5/modules/mal/sysmon.c
Branch: default
Log Message:

Properly watch the limit of the query queue


diffs (37 lines):

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
@@ -25,8 +25,8 @@
 
 // Keep a queue of running queries
 QueryQueue QRYqueue;
-static int qtop, qsize;
-static int qtag= 1;
+int qtop;
+static int qsize, qtag= 1;
 
 void
 mal_runtime_reset(void)
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
@@ -34,6 +34,7 @@ typedef struct QRYQUEUE{
        lng start;
        lng runtime;
 } *QueryQueue;
+mal_export int qtop;
 
 mal_export void runtimeProfileInit(Client cntxt, MalBlkPtr mb, MalStkPtr stk);
 mal_export void runtimeProfileFinish(Client cntxt, MalBlkPtr mb, MalStkPtr 
stk);
diff --git a/monetdb5/modules/mal/sysmon.c b/monetdb5/modules/mal/sysmon.c
--- a/monetdb5/modules/mal/sysmon.c
+++ b/monetdb5/modules/mal/sysmon.c
@@ -58,7 +58,7 @@ SYSMONqueue(Client cntxt, MalBlkPtr mb, 
                throw(MAL, "SYSMONqueue", MAL_MALLOC_FAIL);
        }
 
-       for ( i = 0; i< QRYqueue[i].tag; i++)
+       for ( i = 0; i< qtop; i++)
        if( QRYqueue[i].query && (QRYqueue[i].cntxt->idx == 0 || 
QRYqueue[i].cntxt->user == cntxt->user)) {
                now= (lng) time(0);
                if ( (now-QRYqueue[i].start) > QRYqueue[i].runtime)
_______________________________________________
checkin-list mailing list
[email protected]
https://www.monetdb.org/mailman/listinfo/checkin-list

Reply via email to