Update of /cvsroot/monetdb/MonetDB5/src/mal
In directory sc8-pr-cvs16.sourceforge.net:/tmp/cvs-serv31890/src/mal

Modified Files:
        mal_recycle.mx 
Log Message:
indent
bailout early in RECYCLEcache when there are no limits hit


Index: mal_recycle.mx
===================================================================
RCS file: /cvsroot/monetdb/MonetDB5/src/mal/mal_recycle.mx,v
retrieving revision 1.47
retrieving revision 1.48
diff -u -d -r1.47 -r1.48
--- mal_recycle.mx      14 Mar 2008 07:48:33 -0000      1.47
+++ mal_recycle.mx      14 Mar 2008 08:03:36 -0000      1.48
@@ -73,8 +73,8 @@
 #define GIGA (lng)(1024*1024*1024)
 
 #define HARDLIMIT_VAR 25000
-#define HARDLIMIT_STMT 4000    /* roughly 5/line needed */
-#define HARDLIMIT_MEM 8 * GIGA/RU      /* avoid memory overflow */
+#define HARDLIMIT_STMT 4000            /* roughly 5/line needed */
+#define HARDLIMIT_MEM 8 * (GIGA/RU)     /* avoid memory overflow */
 
 mal_export int recycleVersion;  /* version of recycle table */
 mal_export int retainPolicy;
@@ -309,6 +309,8 @@
                return;
        mem = (recycleMemory && recyclerUsedMemory + wr > recycleMemory);
        size = (recycleCacheLimit && recycleBlk->stop + (k>0) > 
recycleCacheLimit);
+       if (!mem && !size)
+               return;
        if (k>=0)
                recycleBlk->profiler[k].clk= 1; /* most recently used */
        for(i=0; i< recycleBlk->stop; i++){
@@ -345,7 +347,8 @@
                RECYCLEremove(max);
                trimMalVariables(recycleBlk);
                if (monitorRecycler)
-                       stream_printf(GDKerr, "#memory=%lld, stop=%d, 
recycled=%d(%d), saved=%d\n",
+                       fprintf(stderr, 
+                               "#memory=%lld, stop=%d, recycled=%d(%d), 
saved=%d\n",
                                recyclerUsedMemory, recycleBlk->stop,
                                recycled, statements, savedTime);
                recycleVersion++;
@@ -400,7 +403,7 @@
        recyclerUsedMemory += wr;
        if (monitorRecycler) 
                fprintf(stderr, 
-                       "memory=%lld, stop=%d, recycled=%d(%d), saved=%d\n",
+                       "#memory=%lld, stop=%d, recycled=%d(%d), saved=%d\n",
                        recyclerUsedMemory, recycleBlk->stop,
                        recycled, statements, savedTime);
 #ifdef _DEBUG_RECYCLE_
@@ -716,7 +719,7 @@
                for(j=0; j< q->argc; j++)
                if (isVarConstant(mb,getArg(q,j)) ){
                        if( isaBatType(getArgType(mb, q,j)) )
-                               
BBPdecref(getVarConstant(mb,getArg(q,j)).val.bval,TRUE);
+                               
BBPdecref(getVarConstant(mb,getArg(q,j)).val.bval, TRUE);
                }
        }
        freeMalBlk(mb);


-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2008.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
_______________________________________________
Monetdb-checkins mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/monetdb-checkins

Reply via email to