Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
Overview
Comment: | New checks in PRAGMA integrity_check to validate the autovacuum settings in the header. |
---|---|
Downloads: | Tarball | ZIP archive |
Timelines: | family | ancestors | descendants | both | trunk |
Files: | files | file ages | folders |
SHA3-256: |
a4663f09c91d1381a831f61a2b8e8a11 |
User & Date: | drh 2018-07-20 15:44:09.800 |
Original Comment: | New checked in PRAGMA integrity_check to validate the autovacuum settings in the header. |
Context
2018-07-20
| ||
19:24 | Change the SQLITE_Stat34 bit of the optimization test-control so that it prevents STAT4 data from being used but allows it to be loaded into the Index objects. This permits STAT4 to be turned on and off on a per-statement basis. (check-in: 489f3caf5d user: drh tags: trunk) | |
18:01 | Experimental change to ANALYZE so that when computing values for sqlite_stat1, it uses the maximum number for the number of rows having equivalent values, rather than the average. (Leaf check-in: 085f17e124 user: drh tags: stat1-max) | |
15:44 | New checks in PRAGMA integrity_check to validate the autovacuum settings in the header. (check-in: a4663f09c9 user: drh tags: trunk) | |
13:39 | Enhanced detection of problems on the freelist and on overflow list in PRAGMA integrity_check. (check-in: 11e58f5b37 user: drh tags: trunk) | |
Changes
Changes to src/btree.c.
︙ | |||
9836 9837 9838 9839 9840 9841 9842 9843 9844 9845 9846 9847 9848 9849 | 9836 9837 9838 9839 9840 9841 9842 9843 9844 9845 9846 9847 9848 9849 9850 9851 9852 9853 9854 9855 9856 9857 9858 9859 9860 9861 9862 9863 9864 9865 9866 9867 | + + + + + + + + + + + + + + + + + + | sCheck.zPfx = "Main freelist: "; checkList(&sCheck, 1, get4byte(&pBt->pPage1->aData[32]), get4byte(&pBt->pPage1->aData[36])); sCheck.zPfx = 0; /* Check all the tables. */ #ifndef SQLITE_OMIT_AUTOVACUUM if( pBt->autoVacuum ){ int mx = 0; int mxInHdr; for(i=0; (int)i<nRoot; i++) if( mx<aRoot[i] ) mx = aRoot[i]; mxInHdr = get4byte(&pBt->pPage1->aData[52]); if( mx!=mxInHdr ){ checkAppendMsg(&sCheck, "max rootpage (%d) disagrees with header (%d)", mx, mxInHdr ); } }else if( get4byte(&pBt->pPage1->aData[64])!=0 ){ checkAppendMsg(&sCheck, "incremental_vacuum enabled with a max rootpage of zero" ); } #endif testcase( pBt->db->flags & SQLITE_CellSizeCk ); pBt->db->flags &= ~SQLITE_CellSizeCk; for(i=0; (int)i<nRoot && sCheck.mxErr; i++){ i64 notUsed; if( aRoot[i]==0 ) continue; #ifndef SQLITE_OMIT_AUTOVACUUM if( pBt->autoVacuum && aRoot[i]>1 ){ |
︙ |