Yes, sorry, this went wrong.

the only intended change was:

> -                     h->storage = STORE_MMAP;
> +                     h->newstorage = STORE_MMAP;

________________________________________
Van: Stefan Manegold [[email protected]]
Verzonden: maandag 9 februari 2009 23:40
Aan: [email protected]
CC: Peter Boncz; Sjoerd Mullender
Onderwerp: Re: [Monetdb-checkins] MonetDB/src/gdk gdk_heap.mx,,1.107,1.108

Peter,

IMHO, this check in does more than the log message suggests; among others,
it appears to me as if this check in undoes some fixes coancerning *.new
files that Sjoerd recently checked in.

Could you please check and comment whether this was/is intended?
Or was there any CVS related "accident"?

Given that also the copyright statement is reverted to a state of last year,
I suspect that an old version of this file has been re-activated, possibly
instead of using CVS commands to revert or replay a former check in?

Thanks in advance!

Stefan


On Thu, Feb 05, 2009 at 03:39:43PM +0000, Peter Boncz wrote:
> Update of /cvsroot/monetdb/MonetDB/src/gdk
> In directory 23jxhf1.ch3.sourceforge.com:/tmp/cvs-serv5674
>
> Modified Files:
>       gdk_heap.mx
> Log Message:
> - make large allocs fall back again on mmap
>
>
>
> U gdk_heap.mx
> Index: gdk_heap.mx
> ===================================================================
> RCS file: /cvsroot/monetdb/MonetDB/src/gdk/gdk_heap.mx,v
> retrieving revision 1.107
> retrieving revision 1.108
> diff -u -d -r1.107 -r1.108
> --- gdk_heap.mx       22 Jan 2009 14:47:53 -0000      1.107
> +++ gdk_heap.mx       5 Feb 2009 15:39:41 -0000       1.108
> @@ -12,7 +12,7 @@
>  @'
>  @' The Initial Developer of the Original Code is CWI.
>  @' Portions created by CWI are Copyright (C) 1997-July 2008 CWI.
> -@' Copyright August 2008-2009 MonetDB B.V.
> +@' Copyright August 2008- MonetDB B.V.
>  @' All Rights Reserved.
>
>  @f gdk_heap
> @@ -115,7 +115,7 @@
>               fp = GDKfilelocate(nme, "wb", ext);
>               if (fp != NULL) {
>                       fclose(fp);
> -                     h->storage = STORE_MMAP;
> +                     h->newstorage = STORE_MMAP;
>                       HEAPload(h, nme, ext, FALSE);
>               }
>               GDKfree(of);
> @@ -262,7 +262,7 @@
>  @}
>  @- HEAPload
>
> -If we find file X.new, we move it over X (if present) and open it.
> +If we don find file X.new, we move it over X (if present) and open it.
>
>  This routine initializes the h->filename without deallocating
>  its previous contents.
> @@ -284,7 +284,7 @@
>       if (h->filename == NULL)
>               h->filename = (char *) GDKmalloc(strlen(nme) + strlen(ext) + 2);
>       if (h->filename == NULL)
> -             return -1;
> +         return -1;
>       sprintf(h->filename, "%s.%s", nme, ext);
>
>       /* round up mmap heap sizes to REMAP_PAGE_MAXSIZE (usually 512KB) 
> segments */
> @@ -323,19 +323,21 @@
>       strcpy(p, ".new");
>       ret = stat(dstpath, &st);
>       if (stat(srcpath, &st) == 0) {
> -             int t0;
> -             if (ret == 0) {
> -                     t0 = GDKms();
> +             if (ret) {
> +                     int t0 = GDKms();
>                       ret = unlink(dstpath);
>                       IODEBUG THRprintf(GDKout, "#unlink %s = %d (%dms)\n", 
> dstpath, ret, GDKms() - t0);
>               }
> -             t0 = GDKms();
> -             ret = rename(srcpath, dstpath);
> -             if (ret < 0) {
> -                     GDKsyserror("HEAPload: rename of %s failed\n", srcpath);
> -                     return -1;
> +             if (ret == 0) { /* move X.new to X */
> +                     int t0 = GDKms();
> +                     ret = rename(srcpath, dstpath);
> +                     IODEBUG THRprintf(GDKout, "#rename %s %s = %d 
> (%dms)\n", srcpath, dstpath, ret, GDKms() - t0);
>               }
> -                     IODEBUG THRprintf(GDKout, "#rename %s %s = %d 
> (%dms)\n", srcpath, dstpath, ret, GDKms() - t0);
> +     } else if (ret) { /* legacy: accept .priv files as well */
> +             int t0 = GDKms();
> +             strcpy(p, ".priv");
> +             ret = rename(srcpath, dstpath); /* move X.priv to X */
> +             IODEBUG THRprintf(GDKout, "#rename %s %s = %d (%dms)\n", 
> srcpath, dstpath, ret, GDKms() - t0);
>       }
>
>       h->base = (char *) GDKload(nme, ext, h->free, h->size, h->newstorage);
> @@ -885,13 +887,15 @@
>       /*
>          // Create bitmasks that will hold all valid block positions
>        */
> -     hr->validmask = (int *) GDKzalloc(sizeof(int) * ++nwords);
> -     freemask = (int *) GDKzalloc(sizeof(int) * nwords);
> +     hr->validmask = (int *) GDKmalloc(sizeof(int) * ++nwords);
> +     freemask = (int *) GDKmalloc(sizeof(int) * nwords);
>       if (hr->validmask == NULL || freemask == NULL) {
>               GDKfree(hr->validmask);
>               GDKfree(freemask);
>               return FALSE;
>       }
> +     for (block = 0; block < nwords; block++)
> +             freemask[block] = hr->validmask[block] = 0;
>
>       /*
>          // Walk the freelist; register them in freemask
>
>
> ------------------------------------------------------------------------------
> Create and Deploy Rich Internet Apps outside the browser with Adobe(R)AIR(TM)
> software. With Adobe AIR, Ajax developers can use existing skills and code to
> build responsive, highly engaging applications that combine the power of local
> resources and data with the reach of the web. Download the Adobe AIR SDK and
> Ajax docs to start building applications today-http://p.sf.net/sfu/adobe-com
> _______________________________________________
> Monetdb-checkins mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/monetdb-checkins
>
>
>

--
| Dr. Stefan Manegold | mailto:[email protected] |
| CWI,  P.O.Box 94079 | http://www.cwi.nl/~manegold/  |
| 1090 GB Amsterdam   | Tel.: +31 (20) 592-4212       |
| The Netherlands     | Fax : +31 (20) 592-4312       |

No virus found in this incoming message.
Checked by AVG - www.avg.com
Version: 8.0.233 / Virus Database: 270.10.18/1935 - Release Date: 02/04/09 
16:35:00

------------------------------------------------------------------------------
Create and Deploy Rich Internet Apps outside the browser with Adobe(R)AIR(TM)
software. With Adobe AIR, Ajax developers can use existing skills and code to
build responsive, highly engaging applications that combine the power of local
resources and data with the reach of the web. Download the Adobe AIR SDK and
Ajax docs to start building applications today-http://p.sf.net/sfu/adobe-com
_______________________________________________
Monetdb-developers mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/monetdb-developers

Reply via email to