Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

Overview
Comment:Fix a problem in compressed database mode causing pages to be incorrectly marked as dirty.
Downloads: Tarball | ZIP archive
Timelines: family | ancestors | descendants | both | trunk
Files: files | file ages | folders
SHA1: b55b092602162474b8843807863362d6f2f97c82
User & Date: dan 2012-11-23 16:41:01.529
Context
2012-11-28
14:54
Fix an mmap mode bug. Improve upon multi-threaded setups in lsmtest_tdb3.c. check-in: 21db5f73f5 user: dan tags: trunk
2012-11-23
16:41
Fix a problem in compressed database mode causing pages to be incorrectly marked as dirty. check-in: b55b092602 user: dan tags: trunk
2012-11-22
16:14
Fix some "unsafe" pointer casts in lsm_config(). check-in: f58fb32e42 user: dan tags: trunk
Changes
Unified Diff Show Whitespace Changes Patch
Changes to src/lsm_file.c.
1959
1960
1961
1962
1963
1964
1965


1966
1967
1968
1969
1970
1971
1972
      /* Now that it has a page number, insert the page into the hash table */
      iHash = fsHashKey(pFS->nHash, pPg->iPg);
      pPg->pHashNext = pFS->apHash[iHash];
      pFS->apHash[iHash] = pPg;

      pPg->pSeg->nSize += (sizeof(aSz) * 2) + pPg->nCompress;



    }else{

      if( pPg->iPg==0 ){
        /* No page number has been assigned yet. This occurs with pages used
        ** in the b-tree hierarchy. They were not assigned page numbers when
        ** they were created as doing so would cause this call to
        ** lsmFsPagePersist() to write an out-of-order page. Instead a page 







>
>







1959
1960
1961
1962
1963
1964
1965
1966
1967
1968
1969
1970
1971
1972
1973
1974
      /* Now that it has a page number, insert the page into the hash table */
      iHash = fsHashKey(pFS->nHash, pPg->iPg);
      pPg->pHashNext = pFS->apHash[iHash];
      pFS->apHash[iHash] = pPg;

      pPg->pSeg->nSize += (sizeof(aSz) * 2) + pPg->nCompress;

      pPg->flags &= ~PAGE_DIRTY;
      pFS->nWrite++;
    }else{

      if( pPg->iPg==0 ){
        /* No page number has been assigned yet. This occurs with pages used
        ** in the b-tree hierarchy. They were not assigned page numbers when
        ** they were created as doing so would cause this call to
        ** lsmFsPagePersist() to write an out-of-order page. Instead a page