[Monetdb-developers] [Monetdb-checkins] MonetDB5/src/mal mal_recycle.mx, , 1.127, 1.128

Romulo Goncalves R.A.Goncalves at cwi.nl
Thu Jul 31 11:33:45 CEST 2008


Sjoerd Mullender wrote:
> Update of /cvsroot/monetdb/MonetDB5/src/mal
> In directory sc8-pr-cvs16.sourceforge.net:/tmp/cvs-serv19189
> 
> Modified Files:
> 	mal_recycle.mx 
> Log Message:
> Fix types: getVolume returns a size_t, so there is absolutely no need
> to convert back and forth to lng.
> Also use correct format specifiers and the correct number of format
> specifiers.
With this change I will get compilation complains:
cc1: warnings being treated as errors
/ufs/goncalve/MonetDB/current/MonetDB5/src/mal/mal_recycle.mx: In 
function 'RECYCLEnew':
/ufs/goncalve/MonetDB/current/MonetDB5/src/mal/mal_recycle.mx:692: 
warning: comparison between signed and unsigned

due this if clause:
  memLimit = recycleMemory?recycleMemory:HARDLIMIT_MEM;
         if ( recyclerUsedMemory + (lng) wr > memLimit)
                 return ; /* no more caching */

If I do a cast to lng
         if ( recyclerUsedMemory + (lng) wr > memLimit)

The compilation starts to work.

Should I do the cast or is something else that I forgot to do?

Romulo
> 
> 
> U mal_recycle.mx
> Index: mal_recycle.mx
> ===================================================================
> RCS file: /cvsroot/monetdb/MonetDB5/src/mal/mal_recycle.mx,v
> retrieving revision 1.127
> retrieving revision 1.128
> diff -u -d -r1.127 -r1.128
> --- mal_recycle.mx	30 Jul 2008 13:53:03 -0000	1.127
> +++ mal_recycle.mx	31 Jul 2008 08:27:31 -0000	1.128
> @@ -676,7 +676,7 @@
>  }
>  
>  static void 
> -RECYCLEnew(Client cntxt, MalBlkPtr mb, MalStkPtr s, InstrPtr p, lng rd, lng wr)
> +RECYCLEnew(Client cntxt, MalBlkPtr mb, MalStkPtr s, InstrPtr p, size_t rd, size_t wr)
>  {
>  	int i, j, c;
>  	ValRecord *v;
> @@ -1027,8 +1027,8 @@
>  RECYCLEexitImpl(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr p){
>  	lng clk = 0;
>  	lng memLimit, cacheLimit;
> -	lng rd = getVolume(stk,p, 1)/ RU +1;
> -	lng wr = getVolume(stk,p, 0)/ RU +1;
> +	size_t rd = getVolume(stk,p, 1)/ RU +1;
> +	size_t wr = getVolume(stk,p, 0)/ RU +1;
>  	ValRecord *v;
>  
>  	RECYCLEversion(cntxt,mb);
> @@ -1072,7 +1072,7 @@
>  			if (rd+wr > recycleVolume){
>  				(void) RECYCLEnew(cntxt,mb, stk, p, rd, wr);
>  #ifdef _DEBUG_RECYCLE_
> -				stream_printf(cntxt->fdout,"RECYCLEexit size %d %d\n",rd,wr);
> +				stream_printf(cntxt->fdout,"RECYCLEexit size " SZFMT " " SZFMT "\n",rd,wr);
>  #endif
>  			}
>  		}
> @@ -1085,8 +1085,8 @@
>  			if (recycleAlpha *(rd+wr) + (1-recycleAlpha)* clk > (recycleVolume+1) * (recycleTime+1)){
>  				(void) RECYCLEnew(cntxt,mb, stk, p, rd, wr);
>  #ifdef _DEBUG_RECYCLE_
> -				stream_printf(cntxt->fdout,"RECYCLEexit volume %d %d %d \n",clk,rd,wr,(rd+wr)*clk);
> -				stream_printf(cntxt->fdout,"RECYCLEexit volume %d %d\n", recycleVolume, recycleTime);
> +				stream_printf(cntxt->fdout,"RECYCLEexit volume " LLFMT " " SZFMT " " SZFMT " " LLFMT " \n",clk,rd,wr,(rd+wr)*clk);
> +				stream_printf(cntxt->fdout,"RECYCLEexit volume " LLFMT " " LLFMT "\n", recycleVolume, recycleTime);
>  #endif
>  			}
>  		}
> 
> 
> -------------------------------------------------------------------------
> This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
> Build the coolest Linux based applications with Moblin SDK & win great prizes
> Grand prize is a trip for two to an Open Source event anywhere in the world
> http://moblin-contest.org/redirect.php?banner_id=100&url=/
> _______________________________________________
> Monetdb-checkins mailing list
> Monetdb-checkins at lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/monetdb-checkins





More information about the developers-list mailing list