SQLite

Check-in [b1e7a1a677]
Login

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

Overview
Comment:Do not journal the content of freelist leaf pages. This restores an optimization that was accidently undone by check-in [12f7346c13] on 2009-01-20.
Downloads: Tarball | ZIP archive
Timelines: family | ancestors | descendants | both | trunk
Files: files | file ages | folders
SHA1: b1e7a1a677e1c2a6c2ab83a67070605465a3e495
User & Date: drh 2010-04-01 13:41:11.000
Context
2010-04-01
16:15
Zero the filesize-in-header word for bigfile.tcl. Remove bigfile.tcl from the journaltest permutation. (check-in: 63610c71ca user: drh tags: trunk)
13:41
Do not journal the content of freelist leaf pages. This restores an optimization that was accidently undone by check-in [12f7346c13] on 2009-01-20. (check-in: b1e7a1a677 user: drh tags: trunk)
02:47
Remove a NEVER in sqlite3PagerPagecount() that can in fact be true. (check-in: 8f00533782 user: drh tags: trunk)
Changes
Unified Diff Ignore Whitespace Patch
Changes to src/pager.c.
3828
3829
3830
3831
3832
3833
3834
3835
3836
3837
3838
3839
3840
3841
3842
    ** Set pPg to 0 and jump to the exception handler.  */
    pPg = 0;
    goto pager_acquire_err;
  }
  assert( (*ppPage)->pgno==pgno );
  assert( (*ppPage)->pPager==pPager || (*ppPage)->pPager==0 );

  if( (*ppPage)->pPager ){
    /* In this case the pcache already contains an initialized copy of
    ** the page. Return without further ado.  */
    assert( pgno<=PAGER_MAX_PGNO && pgno!=PAGER_MJ_PGNO(pPager) );
    PAGER_INCR(pPager->nHit);
    return SQLITE_OK;

  }else{







|







3828
3829
3830
3831
3832
3833
3834
3835
3836
3837
3838
3839
3840
3841
3842
    ** Set pPg to 0 and jump to the exception handler.  */
    pPg = 0;
    goto pager_acquire_err;
  }
  assert( (*ppPage)->pgno==pgno );
  assert( (*ppPage)->pPager==pPager || (*ppPage)->pPager==0 );

  if( (*ppPage)->pPager && !noContent ){
    /* In this case the pcache already contains an initialized copy of
    ** the page. Return without further ado.  */
    assert( pgno<=PAGER_MAX_PGNO && pgno!=PAGER_MJ_PGNO(pPager) );
    PAGER_INCR(pPager->nHit);
    return SQLITE_OK;

  }else{