Re: [sqlite] transient SQLITE_CORRUPT

2005-06-17 Thread Kevin Schmeichel

  From everything I've read, I would have thought this
was the case.  But in practice I have been seeing
transient SQLITE_CORRUPT errors.  I tried "pragma
integrity_check" and it said ok.  

  I'm running my app on an embedded linux machine. 
The db is in ramdisk and I'm using TEMP_STORE=3, so
everything should be in ram.   Since sqlite3 returns
SQLITE_CORRUPT in over 20 places, it might just be
easier to use my workaround than to try and figure out
what's happening.  As I said, the error doesn't occur
that often (maybe a few times a day)...

Kevin
--- "D. Richard Hipp" <[EMAIL PROTECTED]> wrote:

> 
> There should never be such a thing as a transient
> SQLITE_CORRUPT error.  You should only get an
> SQLITE_CORRUPT
> error if the database file is truly and permanently
> corrupted.
> -- 
> D. Richard Hipp <[EMAIL PROTECTED]>
> 
> 




 
Yahoo! Sports 
Rekindle the Rivalries. Sign up for Fantasy Football 
http://football.fantasysports.yahoo.com


Re: [sqlite] transient SQLITE_CORRUPT

2005-06-16 Thread Randall Fox

Kevin Schmeichel wrote:


 As I reported earlier, after updating to sqlite 3.2.2, I started
 getting occasional SQLITE_CORRUPT errors. The next query always
 worked, so the error was only a temporary condition. I decided that
 if I got an error on a query, I would retry the query after closing
 and reopening the db. I tried this, but I saw the SQLITE_CORRUPT
 error repeat itself. Next thought was that maybe sqlite just needed
 a bit of time to "uncorrupt" itself, so I put in a sleep of 300 ms
 before retrying the failed query. Seems to work...


Did you try:

*PRAGMA integrity_check;

Perhaps that will tell you if you have integrity problems on the db..

Randall Fox
*




Re: [sqlite] transient SQLITE_CORRUPT

2005-06-16 Thread D. Richard Hipp
On Thu, 2005-06-16 at 11:25 -0700, Kevin Schmeichel wrote:
>   As I reported earlier, after updating to sqlite
> 3.2.2, I started getting occasional SQLITE_CORRUPT
> errors.  The next query always worked, so the error
> was only a temporary condition.  I decided that if I
> got an error on a query, I would retry the query after
> closing and reopening the db.  I tried this, but I saw
> the SQLITE_CORRUPT error repeat itself.  Next thought
> was that maybe sqlite just needed a bit of time to
> "uncorrupt" itself, so I put in a sleep of 300 ms
> before retrying the failed query.  Seems to work...
> 

There should never be such a thing as a transient
SQLITE_CORRUPT error.  You should only get an SQLITE_CORRUPT
error if the database file is truly and permanently
corrupted.
-- 
D. Richard Hipp <[EMAIL PROTECTED]>



[sqlite] transient SQLITE_CORRUPT

2005-06-16 Thread Kevin Schmeichel

  As I reported earlier, after updating to sqlite
3.2.2, I started getting occasional SQLITE_CORRUPT
errors.  The next query always worked, so the error
was only a temporary condition.  I decided that if I
got an error on a query, I would retry the query after
closing and reopening the db.  I tried this, but I saw
the SQLITE_CORRUPT error repeat itself.  Next thought
was that maybe sqlite just needed a bit of time to
"uncorrupt" itself, so I put in a sleep of 300 ms
before retrying the failed query.  Seems to work...

Kevin


__
Do You Yahoo!?
Tired of spam?  Yahoo! Mail has the best spam protection around 
http://mail.yahoo.com