Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
Overview
Comment: | Do not use the insert-overwrite optimization if the cell might overwrite the page header. |
---|---|
Downloads: | Tarball | ZIP archive | SQL archive |
Timelines: | family | ancestors | descendants | both | trunk |
Files: | files | file ages | folders |
SHA3-256: |
f60a83069168899dcfd706b4d0901084 |
User & Date: | drh 2019-07-22 23:24:01 |
Context
2019-07-23
| ||
13:26 | Avoid redefining types u32 and u16 when fossildelta.c is compiled as part of the amalgamation. check-in: d8e88248e3 user: dan tags: trunk | |
2019-07-22
| ||
23:30 | Do not use the insert-overwrite optimization if the cell might overwrite the page header. Leaf check-in: 9991626b25 user: drh tags: branch-3.29 | |
23:24 | Do not use the insert-overwrite optimization if the cell might overwrite the page header. check-in: f60a830691 user: drh tags: trunk | |
19:01 | Consolidate the removal of Window objects from the Select.pWin list into a single subroutine. check-in: e46b2afc99 user: drh tags: trunk | |
Changes
Changes to src/btree.c.
8722 8723 8724 8725 8726 8727 8728 8729 8730 8731 8732 8733 8734 8735 8736 |
** doing that is no faster then skipping this optimization and just
** calling dropCell() and insertCell().
**
** This optimization cannot be used on an autovacuum database if the
** new entry uses overflow pages, as the insertCell() call below is
** necessary to add the PTRMAP_OVERFLOW1 pointer-map entry. */
assert( rc==SQLITE_OK ); /* clearCell never fails when nLocal==nPayload */
if( oldCell+szNew > pPage->aDataEnd ) return SQLITE_CORRUPT_BKPT;
memcpy(oldCell, newCell, szNew);
return SQLITE_OK;
}
dropCell(pPage, idx, info.nSize, &rc);
if( rc ) goto end_insert;
}else if( loc<0 && pPage->nCell>0 ){
assert( pPage->leaf );
|
> > > | > > |
8722 8723 8724 8725 8726 8727 8728 8729 8730 8731 8732 8733 8734 8735 8736 8737 8738 8739 8740 8741 |
** doing that is no faster then skipping this optimization and just ** calling dropCell() and insertCell(). ** ** This optimization cannot be used on an autovacuum database if the ** new entry uses overflow pages, as the insertCell() call below is ** necessary to add the PTRMAP_OVERFLOW1 pointer-map entry. */ assert( rc==SQLITE_OK ); /* clearCell never fails when nLocal==nPayload */ if( oldCell < pPage->aData+pPage->hdrOffset+10 ){ return SQLITE_CORRUPT_BKPT; } if( oldCell+szNew > pPage->aDataEnd ){ return SQLITE_CORRUPT_BKPT; } memcpy(oldCell, newCell, szNew); return SQLITE_OK; } dropCell(pPage, idx, info.nSize, &rc); if( rc ) goto end_insert; }else if( loc<0 && pPage->nCell>0 ){ assert( pPage->leaf ); |
Changes to test/fuzzdata7.db.
cannot compute difference between binary files