[sqlite] Unable to recover the DB by vacuum

2010-02-23 Thread ramesh.kotabagi
Thanks lot Pavel,
 
 >I only had two problem tables and luckily these seldom change,  for
these I went back to the week old backup and cut them out of the dump
file and applied them to the newly created database. Now I
integrity_check more often
 
i will try out ".dump option", i done last time also, i didn't able to
recover the complete DB,
the removing the some corrupt rows might have helped me, i will try out
this, thanks JIM
 

Please do not print this email unless it is absolutely necessary. 

The information contained in this electronic message and any attachments to 
this message are intended for the exclusive use of the addressee(s) and may 
contain proprietary, confidential or privileged information. If you are not the 
intended recipient, you should not disseminate, distribute or copy this e-mail. 
Please notify the sender immediately and destroy all copies of this message and 
any attachments. 

WARNING: Computer viruses can be transmitted via email. The recipient should 
check this email and any attachments for the presence of viruses. The company 
accepts no liability for any damage caused by any virus transmitted by this 
email. 

www.wipro.com
___
sqlite-users mailing list
sqlite-users@sqlite.org
http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users


Re: [sqlite] Unable to recover the DB by vacuum

2010-02-23 Thread Jim "Jed" Dodgen
I recently had a similar problem,  not wanting to fall back to a week
old dump of the database, what I did was to command line ".dump"ed the
defective database and attempt a reload.
I only had two problem tables and luckily these seldom change,  for
these I went back to the week old backup and cut them out of the dump
file and applied them to the newly created database. Now I
integrity_check more often.

On Tue, Feb 23, 2010 at 3:54 AM, Pavel Ivanov  wrote:
>> How can i recover this kind of DB, is it possible? and is there any way
>> to avoid these
>> unused pages, will enable auto_vacuum solve the problem ?
>
> 'VACUUM' is not designed to recover malformed database. Yes, there are
> some kinds of problems that can be eliminated during vacuuming, but
> not all of them. And automatic vacuuming will never guarantee you
> protection against database corruption. When properly used SQLite will
> protect from database corruption itself. If you've got corrupted
> database it means that you have either bad application or your
> database file resides on some bad file system.
>
>
> Pavel
>
> On Tue, Feb 23, 2010 at 5:33 AM,   wrote:
>> Hi All,
>>
>> I found the DB corruption (malformed database), reporting some unused
>> pages,
>> please find the below trace,
>>
>> *** in database main ***
>> Main freelist: 21 of 21 pages missing from overflow list starting at 0
>> Page 1604: sqlite3BtreeInitPage() returns error code 11
>> Page 1461 is never used
>> Page 1468 is never used
>> Page 1469 is never used
>> Page 1472 is never used
>> Page 1473 is never used
>> Page 1474 is never used
>> Page 1475 is never used
>> Page 1478 is never used
>> Page 1480 is never used
>> Page 1482 is never used
>> Page 1484 is never used
>> Page 1485 is never used
>> Page 1486 is never used
>> Page 1488 is never used
>> Page 1489 is never used
>> Page 1491 is never used
>> Page 1517 is never used
>> Page 1531 is never used
>> Page 1536 is never used
>> Page 1578 is never used
>> Page 1581 is never used
>>
>> I tried to recover the DB, by running "vacuum", its failed again saying
>> "SQL error: database disk image is malformed".
>>
>> How can i recover this kind of DB, is it possible? and is there any way
>> to avoid these
>> unused pages, will enable auto_vacuum solve the problem ?
>>
>> I am using 3.5.8 version. and DB size is 1.6M
>>
>> Thanks in advance.
>>
>> Regards,
>> Ramesh
>>
>>
>> Please do not print this email unless it is absolutely necessary.
>>
>> The information contained in this electronic message and any attachments to 
>> this message are intended for the exclusive use of the addressee(s) and may 
>> contain proprietary, confidential or privileged information. If you are not 
>> the intended recipient, you should not disseminate, distribute or copy this 
>> e-mail. Please notify the sender immediately and destroy all copies of this 
>> message and any attachments.
>>
>> WARNING: Computer viruses can be transmitted via email. The recipient should 
>> check this email and any attachments for the presence of viruses. The 
>> company accepts no liability for any damage caused by any virus transmitted 
>> by this email.
>>
>> www.wipro.com
>> ___
>> sqlite-users mailing list
>> sqlite-users@sqlite.org
>> http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users
>>
> ___
> sqlite-users mailing list
> sqlite-users@sqlite.org
> http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users
>



-- 
Jim "Jed" Dodgen
j...@dodgen.us
___
sqlite-users mailing list
sqlite-users@sqlite.org
http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users


Re: [sqlite] Unable to recover the DB by vacuum

2010-02-23 Thread Pavel Ivanov
> How can i recover this kind of DB, is it possible? and is there any way
> to avoid these
> unused pages, will enable auto_vacuum solve the problem ?

'VACUUM' is not designed to recover malformed database. Yes, there are
some kinds of problems that can be eliminated during vacuuming, but
not all of them. And automatic vacuuming will never guarantee you
protection against database corruption. When properly used SQLite will
protect from database corruption itself. If you've got corrupted
database it means that you have either bad application or your
database file resides on some bad file system.


Pavel

On Tue, Feb 23, 2010 at 5:33 AM,   wrote:
> Hi All,
>
> I found the DB corruption (malformed database), reporting some unused
> pages,
> please find the below trace,
>
> *** in database main ***
> Main freelist: 21 of 21 pages missing from overflow list starting at 0
> Page 1604: sqlite3BtreeInitPage() returns error code 11
> Page 1461 is never used
> Page 1468 is never used
> Page 1469 is never used
> Page 1472 is never used
> Page 1473 is never used
> Page 1474 is never used
> Page 1475 is never used
> Page 1478 is never used
> Page 1480 is never used
> Page 1482 is never used
> Page 1484 is never used
> Page 1485 is never used
> Page 1486 is never used
> Page 1488 is never used
> Page 1489 is never used
> Page 1491 is never used
> Page 1517 is never used
> Page 1531 is never used
> Page 1536 is never used
> Page 1578 is never used
> Page 1581 is never used
>
> I tried to recover the DB, by running "vacuum", its failed again saying
> "SQL error: database disk image is malformed".
>
> How can i recover this kind of DB, is it possible? and is there any way
> to avoid these
> unused pages, will enable auto_vacuum solve the problem ?
>
> I am using 3.5.8 version. and DB size is 1.6M
>
> Thanks in advance.
>
> Regards,
> Ramesh
>
>
> Please do not print this email unless it is absolutely necessary.
>
> The information contained in this electronic message and any attachments to 
> this message are intended for the exclusive use of the addressee(s) and may 
> contain proprietary, confidential or privileged information. If you are not 
> the intended recipient, you should not disseminate, distribute or copy this 
> e-mail. Please notify the sender immediately and destroy all copies of this 
> message and any attachments.
>
> WARNING: Computer viruses can be transmitted via email. The recipient should 
> check this email and any attachments for the presence of viruses. The company 
> accepts no liability for any damage caused by any virus transmitted by this 
> email.
>
> www.wipro.com
> ___
> sqlite-users mailing list
> sqlite-users@sqlite.org
> http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users
>
___
sqlite-users mailing list
sqlite-users@sqlite.org
http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users


[sqlite] Unable to recover the DB by vacuum

2010-02-23 Thread ramesh.kotabagi
Hi All,
 
I found the DB corruption (malformed database), reporting some unused
pages,
please find the below trace,
 
*** in database main ***
Main freelist: 21 of 21 pages missing from overflow list starting at 0
Page 1604: sqlite3BtreeInitPage() returns error code 11
Page 1461 is never used
Page 1468 is never used
Page 1469 is never used
Page 1472 is never used
Page 1473 is never used
Page 1474 is never used
Page 1475 is never used
Page 1478 is never used
Page 1480 is never used
Page 1482 is never used
Page 1484 is never used
Page 1485 is never used
Page 1486 is never used
Page 1488 is never used
Page 1489 is never used
Page 1491 is never used
Page 1517 is never used
Page 1531 is never used
Page 1536 is never used
Page 1578 is never used
Page 1581 is never used

I tried to recover the DB, by running "vacuum", its failed again saying
"SQL error: database disk image is malformed".
 
How can i recover this kind of DB, is it possible? and is there any way
to avoid these
unused pages, will enable auto_vacuum solve the problem ?
 
I am using 3.5.8 version. and DB size is 1.6M
 
Thanks in advance.
 
Regards,
Ramesh


Please do not print this email unless it is absolutely necessary. 

The information contained in this electronic message and any attachments to 
this message are intended for the exclusive use of the addressee(s) and may 
contain proprietary, confidential or privileged information. If you are not the 
intended recipient, you should not disseminate, distribute or copy this e-mail. 
Please notify the sender immediately and destroy all copies of this message and 
any attachments. 

WARNING: Computer viruses can be transmitted via email. The recipient should 
check this email and any attachments for the presence of viruses. The company 
accepts no liability for any damage caused by any virus transmitted by this 
email. 

www.wipro.com
___
sqlite-users mailing list
sqlite-users@sqlite.org
http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users