[yunqa.de] SQLite Error 1 - not an error.

  • From: "Michael J. Leaver" <MJLeaver@xxxxxxxxxxxxxxxxx>
  • To: <yunqa@xxxxxxxxxxxxx>
  • Date: Fri, 17 Jul 2009 11:27:35 +0800

Hi,

Using DISQLite3 2.0.8 on Delphi 2007, I'm getting an "SQLite Error 1 - not
an error." message when calling Step. This error is only happening rarely
and isn't something we can reproduce. Fortunately we have a madExcept debug
log from one of our customers:

operating system  : Windows XP Service Pack 3 build 2600
system language   : French
system up time    : 10 hours 57 minutes
program up time   : 2 hours 11 minutes
processors        : 2x Intel(R) Core(TM)2 CPU 6400 @ 2.13GHz
physical memory   : 711/2046 MB (free/total)
free disk space   : (C:) 24,35 GB
display mode      : 1600x1200, 32 bit
process id        : $13d4
allocated memory  : 61,32 MB
exec. date/time   : 2009-07-16 16:23
compiled with     : Delphi 2006/07
madExcept version : 3.0i beta 2
callstack crc     : $0db7d0ac, $e05df6e1, $4b4547b2
exception number  : 3
exception class   : ESQLite3
exception message : SQLite Error 1 - not an error.

Sauvegarde  Sites Clients ($1734):
005a6a5e x.exe DISQLite3Api      4020   +3 sqlite3_raise_exception
005ec7dd x.exe DISQLite3Database 3368  +17 TDISQLite3Statement.Step
00825fa1 x.exe FileList          8030  +15 TSBListFileVer.FileHasVersions

disassembling:
[...]
005a6a4f                eax
005a6a50                ecx, esi
005a6a52                dl, 1
005a6a54                eax, [$5a6654]
005a6a59                -$3a2 ($5a66bc)        ;
DISQLite3Api.ESQLite3.Create
005a6a5e      >         -$1a179f ($4052c4)     ; System.@RaiseExcept
005a6a63                loc_5a6a6c
005a6a65 4025           eax, esi
005a6a67                -$80 ($5a69ec)         ;
DISQLite3Api.sqlite3_raise_exception
005a6a6c 4030           eax, eax
005a6a6e                edx
[...]


In our code we are doing the following:

Const 
  SQL_SELECT_VERSIONS_NAME = 'SELECT ROWID FROM List WHERE Name=?;';

Var
  FDBSelectVersionsName: TDISQLite3Statement;
.
.
.
  FDBSelectVersionsName:=FDB.Prepare16(SQL_SELECT_VERSIONS_NAME);
.
.
.
  FDBSelectVersionsName.Bind_Str16(1, aFile.Filename);
  Result:=FDBSelectVersionsName.Step = SQLITE_ROW;


Why are we sometimes getting this exception?

Thanks,
Michael J. Leaver
2BrightSparks Pte Ltd
http://www.2BrightSparks.com/
 

_______________________________________________
Delphi Inspiration mailing list
yunqa@xxxxxxxxxxxxx
//www.freelists.org/list/yunqa



Other related posts: