Please copy the database file to a workstation and try "PRAGMA
integrity_check" on the work station.  This will help us to decide if the
problem is with the SQLite code (or JFFS) or a if it is a corrupt database.

On Tue, Nov 1, 2011 at 1:37 PM, Korey Calmettes <kcalmet...@icontime.com>wrote:

> I don't think the file is truncated.
>
> Interesting stuff here when I run pragma integrity_check:
>
> /data # sqlite3 test.db "pragma integrity_check;"
> *** in database main ***
> Page 480: unable to get the page. error code=522
> Page 481: unable to get the page. error code=522
> Page 482: unable to get the page. error code=522
> On tree page 32 cell 3: Child page depth differs
> Page 485: unable to get the page. error code=522
> On tree page 32 cell 5: Child page depth differs
> On tree page 32 cell 6: Child page depth differs
> Page 487: unable to get the page. error code=522
> On tree page 32 cell 7: Child page depth differs
> On tree page 32 cell 8: Child page depth differs
> Page 493: unable to get the page. error code=522
> On tree page 32 cell 13: Child page depth differs
> On tree page 32 cell 14: Child page depth differs
> Page 495: unable to get the page. error code=522
> On tree page 32 cell 15: Child page depth differs
> On tree page 32 cell 16: Child page depth differs
> Page 505: unable to get the page. error code=522
> On tree page 45 cell 4: Child page depth differs
> On tree page 45 cell 5: Child page depth differs
> Page 421: unable to get the page. error code=522
> On tree page 15 cell 1: Child page depth differs
> Page 422: unable to get the page. error code=522
> On tree page 15 cell 3: Child page depth differs
> Page 424: unable to get the page. error code=522
> On tree page 15 cell 4: Child page depth differs
> On tree page 15 cell 5: Child page depth differs
> Page 49: unable to get the page. error code=522
> Page 33: unable to get the page. error code=522
> Page 34: unable to get the page. error code=522
> Page 472: unable to get the page. error code=522
> Page 473: unable to get the page. error code=522
> Page 474: unable to get the page. error code=522
> Page 475: unable to get the page. error code=522
> Page 476: unable to get the page. error code=522
> Page 477: unable to get the page. error code=522
> Page 478: unable to get the page. error code=522
> Page 479: unable to get the page. error code=522
> Error: disk I/O error
>
> Also, the page size is 1024.
>
> Korey
>
> -----Original Message-----
> From: sqlite-users-boun...@sqlite.org
> [mailto:sqlite-users-boun...@sqlite.org] On Behalf Of Richard Hipp
> Sent: October 31, 2011 2:32 PM
> To: General Discussion of SQLite Database
> Subject: Re: [sqlite] Disk I/O Error
>
> On Mon, Oct 31, 2011 at 5:01 PM, Korey Calmettes
> <kcalmet...@icontime.com>wrote:
>
> > Hello,
> >
> > We are having a random problem with our system that has be puzzled at
> > this point.
> >
> > First a little background.  We have an embedded system running an ARM
> > processor and JFFS file system.  We are running 3.7.7.1.  I e-mailed
> > about a month ago about enabling WAL on our system.  Found out that I
> > needed to set SQLITE_SHM_DIRECTORY to our tmpfs file system when
> > compiling as JFFS doesn't support shared mmap files.
> >
> > This has been working fine, however throughout our testing, we have
> > been hitting a problem.  It seems that some tables are no longer
> > accessible giving a Disk I/O Error.  I logged into the command line
> > interface and replicated the problem.  I ran ".log stdout" and here
> are the results.
> >
> > sqlite> select password from auth;
> > (522) statement aborts at 7: [select password from auth;]
> > Error: disk I/O error
> >
> > However access to other tables will work without any problems.
> >
>
> Error code 522 is SQLITE_IOERR_SHORT_READ.  It is generated here:
>
>     http://www.sqlite.org/src/artifact/07acbb3e074e?ln=3012
>
> SQLite was trying to read N bytes and got back M byes where M>0 and M<N.
>
> Perchance is your database file truncated?  What happens when you run
> "PRAGMA integrity_check" on the database?  What is the page size of your
> database?
>
>
>
> >
> > I searched for how to read the log without success.  I am hopeful that
>
> > someone would be able to tell me what's going on.
> >
> > Korey
> > _______________________________________________
> > sqlite-users mailing list
> > sqlite-users@sqlite.org
> > http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users
> >
>
>
>
> --
> D. Richard Hipp
> d...@sqlite.org
> _______________________________________________
> 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
>



-- 
D. Richard Hipp
d...@sqlite.org
_______________________________________________
sqlite-users mailing list
sqlite-users@sqlite.org
http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users

Reply via email to