Hello.

We have a DB with a corrupted index (see below). The database has a max_pages 
limit that works out to a 10 MB database size (we're embedded). 

We can insert into the table the index is on OK.

When we do a SELECT out of the table that uses the index, we get a "disk or 
database full" error (and not a "db corrupted or not a db" error). Neither the 
DB nor the disk are actually full, however, max_page_count has been corrupted 
(should be 9756 with page size of 1024).

Does this seem...well....normal? I mean, I guess with corruption, all bets are 
off, but I'm curious as to what the mechanism might be that made a full error 
and not a corrupted error pop out.

Thanks

-- Ward

sqlite> pragma integrity_check;
*** in database main ***
On tree page 6053 cell 29: Failed to read ptrmap key=67699289
On tree page 6053 cell 29: invalid page number 67699289
On tree page 6053 cell 30: Failed to read ptrmap key=151148817
On tree page 6053 cell 30: invalid page number 151148817
Corruption detected in cell 29 on page 6053
Corruption detected in cell 30 on page 6053
Corruption detected in cell 31 on page 6053
Fragmentation of 33 bytes reported as 0 on page 6053
row 1283 missing from index iRareData
row 1284 missing from index iRareData
row 1285 missing from index iRareData
row 1286 missing from index iRareData
row 1287 missing from index iRareData


sqlite> pragma max_page_count;
1073741823
sqlite> pragma page_count;
8683
sqlite> pragma freelist_count;
1393
_______________________________________________
sqlite-users mailing list
sqlite-users@mailinglists.sqlite.org
http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users

Reply via email to