Hi

You're correct, our application doesn't need 64 bit support.
I've tried your suggestion.

Not only does our test harness using the in memory database now work,
but also our integration tests ( reading SQLite database files generated
by the PC database browser ).

So.... we're now up and running. 

There are, however a few values that still look odd in the trace (
Attached trace.txt ).
I'd appreciate your feedback on whether this looks normal, or whether we
have something else screwy going on.

I'd just like to say you've been extremely helpful, and it is deeply
appreciated.

Kindest regards and Viva la SQLite!.

Richard


--
Richard Barrass. 
Senior Embedded Software Engineer Cardinal Health (Alaris Products). 
e: [EMAIL PROTECTED] t: 01256 388381 f: 01256 388466


-----Original Message-----
From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] 
Sent: 14 August 2006 16:54
To: sqlite-users@sqlite.org
Subject: Re: [sqlite] Problems with sqlite 3.3.6 on ARM embedded
platform


"Barrass, Richard" <[EMAIL PROTECTED]> wrote:
> Thanks for the help.
> 
> I took a little while to extract our standard out ( It's multiplexed 
> with the test harness results at current ).
> 
> Here's the trace:-
> 
> VDBE Execution Trace:
> SQL: [PRAGMA vdbe_trace=ON]
>    0 Expire           1    0 
>    1 Halt             0    0 
> VDBE Execution Trace:
> SQL: [SELECT * FROM sqlite_master]
>    0 Goto             0   14 
>   14 Transaction      0    0 
>   15 VerifyCookie     0    1 
>   16 Goto             0    1 
>    1 Integer          0    0 # sqlite_master
> Stack: i:619574286855700480

Hmmm....  Where is that big number coming from?  The
hex value is 0x8992b8800000000.  In other words, it appears
to set the lower 32-bits to zero correctly, but leave the
upper 32-bits in a random state.  Here is the code that does the
setting:

  case OP_Integer: {
    pTos++;
    pTos->flags = MEM_Int;
    pTos->i = pOp->p1;
    break;
  }

The pOp->p1 value is 0 and is a 32-bit integer.  pTos->i is a 64-bit
integer.  

More and more I suspect that your compiler is generating incorrect code
for assigning shorter integer values into a 64-bit integer.

Perhaps you will get better results on ARM if you recompile using only
32-bit integers.  (Do you need 64-bit integers in your application?
Probably not...)

Recompile with -DSQLITE_INT64_TYPE=int and -DSQLITE_32BIT_ROWID=1 and
see if that doesn't help.  Note that you must use the
-DSQLITE_INT64_TYPE=int option on any application that includes the
<sqlite3.h> header file as well.
--
D. Richard Hipp   <[EMAIL PROTECTED]>


------------------------------------------------------------------------
-----
To unsubscribe, send email to [EMAIL PROTECTED]
------------------------------------------------------------------------
-----
 
This message is for the designated recipient only and may contain privileged, 
proprietary, or otherwise private information. If you have received it in 
error, please notify the sender immediately and delete the original. Any other 
use of the email by you is prohibited. 
 
Danish - Deutsch - English - Espanol - Francais - Italiano - Japanese - 
Nederlands - Norsk - Portuguese - Svenska:
www.cardinalhealth.com/legal/email
VDBE Execution Trace:
SQL: [PRAGMA vdbe_trace=ON]
   0 Expire           1    0 
   1 Halt             0    0 
VDBE Execution Trace:
SQL: [SELECT * FROM sqlite_master]
   0 Goto             0   14 
  14 Transaction      0    0 
  15 VerifyCookie     0    1 
  16 Goto             0    1 
   1 Integer          0    0 # sqlite_master
Stack: i:619573668528830104
   2 OpenRead         0    1 
   3 SetNumColumns    0    5 
   4 Rewind           0   12 
   5 Column           0    0 # sqlite_master.type
Stack:  s5[table](8)
   6 Column           0    1 # sqlite_master.name
Stack:  s7[Players](8)  s5[table](8)
   7 Column           0    2 # sqlite_master.tbl_name
Stack:  s7[Players](8)  s7[Players](8)  s5[table](8)
   8 Column           0    3 # sqlite_master.rootpage
Stack: i:148420440  s7[Players](8)  s7[Players](8)  s5[table](8)
   9 Column           0    4 # sqlite_master.sql
Stack:  z52[CREATE TABLE Pl](8) i:148420440  s7[Players](8)  s7[Players](8)  
s5[table](8)
  10 Callback         5    0 
  11 Next             0    5 
  12 Close            0    0 
  13 Halt             0    0 
VDBE Execution Trace:
SQL: [INSERT INTO Players VALUES ( "Joe","Cole")]
   0 Goto             0   11 
  11 Transaction      0    1 
  12 VerifyCookie     0    1 
  13 Goto             0    1 
   1 Integer          0    0 # Players
Stack: i:619573668528825520
   2 OpenWrite        0    2 
   3 SetNumColumns    0    2 
   4 NewRowid         0    0 
Stack: i:148415664
   5 String8          0    0 Joe
Stack:  t3[Joe](8) i:148415664
   6 String8          0    0 Cole
Stack:  t4[Cole](8)  t3[Joe](8) i:148415664
   7 MakeRecord       2    0 aa
Stack: s10[03 13 15 4A 6F 65 43 6F 6C 65 ...JoeCole] i:148415664
   8 Insert           0    3 Players
   9 Close            0    0 
  10 Halt             0    0 
VDBE Execution Trace:
SQL: [CREATE TABLE Clubs ( FirstName TEXT,Ground TEXT)]
   0 Goto             0   50 
  50 Transaction      0    1 
  51 VerifyCookie     0    1 
  52 Goto             0    1 
   1 ReadCookie       0    1 
Stack: i:619573668528831096
   2 If               0    7 
   7 CreateTable      0    0 
Stack: i:619573668528831096
   8 Integer          0    0 
Stack: i:619573668528831160 i:619573668528831096
   9 OpenWrite        0    1 
Stack: i:148421240
  10 SetNumColumns    0    5 
Stack: i:148421240
  11 NewRowid         0    0 
Stack: i:148421304 i:148421240
  12 Dup              0    0 
Stack: i:148421368 i:148421304 i:148421240
  13 Null             0    0 
Stack: NULL i:148421368 i:148421304 i:148421240
  14 Insert           0    0 
Stack: i:148421304 i:148421240
  15 Close            0    0 
Stack: i:148421304 i:148421240
  16 Pull             1    0 
Stack: i:148421304 i:148421240
  17 Close            0    0 
Stack: i:148421304 i:148421240
  18 Dup              0    0 
Stack: i:148421368 i:148421304 i:148421240
  19 MemStore         0    1 
Stack: i:148421304 i:148421240
  20 Dup              1    0 
Stack: i:148421368 i:148421304 i:148421240
  21 MemStore         1    1 
Stack: i:148421304 i:148421240
  22 Integer          0    0 # sqlite_master
Stack: i:148421368 i:148421304 i:148421240
  23 OpenRead         0    1 
Stack: i:148421304 i:148421240
  24 SetNumColumns    0    0 
Stack: i:148421304 i:148421240
  25 MemLoad          1    0 
Stack: i:148421368 i:148421304 i:148421240
  26 MustBeInt        1   30 
Stack: i:148421368 i:148421304 i:148421240
  27 NotExists        0   30 pk
Stack: i:148421304 i:148421240
  28 Rowid            0    0 
Stack: i:148421368 i:148421304 i:148421240
  29 FifoWrite        0    0 
Stack: i:148421304 i:148421240
  30 Close            0    0 
Stack: i:148421304 i:148421240
  31 Integer          0    0 # sqlite_master
Stack: i:148421368 i:148421304 i:148421240
  32 OpenWrite        0    1 
Stack: i:148421304 i:148421240
  33 SetNumColumns    0    5 
Stack: i:148421304 i:148421240
  34 FifoRead         0   45 
Stack: i:148421368 i:148421304 i:148421240
  35 Dup              0    0 
Stack: i:148421432 i:148421368 i:148421304 i:148421240
  36 NotExists        0   34 
Stack: i:148421368 i:148421304 i:148421240
  37 String8          0    0 table
Stack:  t5[table](8) i:148421368 i:148421304 i:148421240
  38 String8          0    0 Clubs
Stack:  t5[Clubs](8)  t5[table](8) i:148421368 i:148421304 i:148421240
  39 String8          0    0 Clubs
Stack:  t5[Clubs](8)  t5[Clubs](8)  t5[table](8) i:148421368 i:148421304
  40 MemLoad          0    0 
Stack: i:148421624  t5[Clubs](8)  t5[Clubs](8)  t5[table](8) i:148421368
  41 String8          0    0 CREATE TABLE Clubs ( FirstName TEXT,Ground TEXT)
Stack:  t48[CREATE TABLE Cl](8) i:148421624  t5[Clubs](8)  t5[Clubs](8)  
t5[table](8)
  42 MakeRecord       5    0 aaada
Stack: z70[06 17 17 17 01 6D 74 61 62 6C 65 43 6C 75 62 73 .....mtableClubs] 
i:148421368 i:148421304 i:148421240
  43 Insert           0    0 
Stack: i:300796132024 i:300796131960
  44 Goto             0   34 
Stack: i:300796132024 i:300796131960
  34 FifoRead         0   45 
Stack: i:300796132024 i:300796131960
  45 Close            0    0 
Stack: i:300796132024 i:300796131960
  46 Integer          2    0 
Stack: i:300796132088 i:300796132024 i:300796131960
  47 SetCookie        0    0 
Stack: i:300796132024 i:300796131960
  48 ParseSchema      0    0 tbl_name='Clubs'
VDBE Execution Trace:
SQL: [SELECT name, rootpage, sql, 0 FROM 'main'.sqlite_master WHERE 
tbl_name='Clubs']
   0 Goto             0   16 
  16 Transaction      0    0 
  17 VerifyCookie     0    2 
  18 Goto             0    1 
   1 Integer          0    0 # sqlite_master
Stack: i:619569682799169960
   2 OpenRead         0    1 
   3 SetNumColumns    0    5 
   4 Rewind           0   14 
   5 Column           0    2 # sqlite_master.tbl_name
Stack:  s7[Players](8)
   6 String8          0    0 Clubs
Stack:  t5[Clubs](8)  s7[Players](8)
   7 Ne             353   13 collseq(BINARY)
  13 Next             0    5 
   5 Column           0    2 # sqlite_master.tbl_name
Stack:  s5[Clubs](8)
   6 String           5    0 Clubs
Stack:  t5[Clubs](8)  s5[Clubs](8)
   7 Ne             353   13 collseq(BINARY)
   8 Column           0    1 # sqlite_master.name
Stack:  s5[Clubs](8)
   9 Column           0    3 # sqlite_master.rootpage
Stack: i:148410856  s5[Clubs](8)
  10 Column           0    4 # sqlite_master.sql
Stack:  z48[CREATE TABLE Cl](8) i:148410856  s5[Clubs](8)
  11 Integer          0    0 
Stack: i:148410984  z48[CREATE TABLE Cl](8) i:148410856  s5[Clubs](8)
  12 Callback         4    0 
VDBE Execution Trace:
SQL: [CREATE TABLE Clubs ( FirstName TEXT,Ground TEXT)]
   0 Halt             0    0 
  13 Next             0    5 
  14 Close            0    0 
  15 Halt             0    0 
Stack: i:148421304 i:148421240
  49 Halt             0    0 
VDBE Execution Trace:
SQL: [INSERT INTO Clubs VALUES ( "ManU","OldTrafford")]
   0 Goto             0   11 
  11 Transaction      0    1 
  12 VerifyCookie     0    2 
  13 Goto             0    1 
   1 Integer          0    0 # Clubs
Stack: i:619573668528820648
   2 OpenWrite        0    3 
   3 SetNumColumns    0    2 
   4 NewRowid         0    0 
Stack: i:148410792
   5 String8          0    0 ManU
Stack:  t4[ManU](8) i:148410792
   6 String8          0    0 OldTrafford
Stack:  t11[OldTrafford](8)  t4[ManU](8) i:148410792
   7 MakeRecord       2    0 aa
Stack: s18[03 15 23 4D 61 6E 55 4F 6C 64 54 72 61 66 66 6F ..#ManUOldTraffo] 
i:148410792
   8 Insert           0    3 Clubs
   9 Close            0    0 
  10 Halt             0    0 
VDBE Execution Trace:
SQL: [INSERT INTO Clubs VALUES ( "Liverpool","Anfield")]
   0 Goto             0   11 
  11 Transaction      0    1 
  12 VerifyCookie     0    2 
  13 Goto             0    1 
   1 Integer          0    0 # Clubs
Stack: i:619573668528820648
   2 OpenWrite        0    3 
   3 SetNumColumns    0    2 
   4 NewRowid         0    0 
Stack: i:148410792
   5 String8          0    0 Liverpool
Stack:  t9[Liverpool](8) i:148410792
   6 String8          0    0 Anfield
Stack:  t7[Anfield](8)  t9[Liverpool](8) i:148410792
   7 MakeRecord       2    0 aa
Stack: s19[03 1F 1B 4C 69 76 65 72 70 6F 6F 6C 41 6E 66 69 ...LiverpoolAnfi] 
i:148410792
   8 Insert           0    3 Clubs
   9 Close            0    0 
  10 Halt             0    0 
VDBE Execution Trace:
SQL: [INSERT INTO Clubs VALUES ( "Chelsea","Stamford Bridge")]
   0 Goto             0   11 
  11 Transaction      0    1 
  12 VerifyCookie     0    2 
  13 Goto             0    1 
   1 Integer          0    0 # Clubs
Stack: i:619573668528820648
   2 OpenWrite        0    3 
   3 SetNumColumns    0    2 
   4 NewRowid         0    0 
Stack: i:148410792
   5 String8          0    0 Chelsea
Stack:  t7[Chelsea](8) i:148410792
   6 String8          0    0 Stamford Bridge
Stack:  t15[Stamford Bridge](8)  t7[Chelsea](8) i:148410792
   7 MakeRecord       2    0 aa
Stack: s25[03 1B 2B 43 68 65 6C 73 65 61 53 74 61 6D 66 6F ..+ChelseaStamfo] 
i:148410792
   8 Insert           0    3 Clubs
   9 Close            0    0 
  10 Halt             0    0 
VDBE Execution Trace:
SQL: [SELECT * FROM Players]
   0 Goto             0   11 
  11 Transaction      0    0 
  12 VerifyCookie     0    2 
  13 Goto             0    1 
   1 Integer          0    0 # Players
Stack: i:619573668528833216
   2 OpenRead         0    2 
   3 SetNumColumns    0    2 
   4 Rewind           0    9 
   5 Column           0    0 # Players.FirstName
Stack:  s3[Joe](8)
   6 Column           0    1 # Players.LastName
Stack:  s4[Cole](8)  s3[Joe](8)
   7 Callback         2    0 
   8 Next             0    5 
   9 Close            0    0 
  10 Halt             0    0 
VDBE Execution Trace:
SQL: [SELECT * FROM Clubs]
   0 Goto             0   11 
  11 Transaction      0    0 
  12 VerifyCookie     0    2 
  13 Goto             0    1 
   1 Integer          0    0 # Clubs
Stack: i:619573668528833216
   2 OpenRead         0    3 
   3 SetNumColumns    0    2 
   4 Rewind           0    9 
   5 Column           0    0 # Clubs.FirstName
Stack:  s4[ManU](8)
   6 Column           0    1 # Clubs.Ground
Stack:  s11[OldTrafford](8)  s4[ManU](8)
   7 Callback         2    0 
   8 Next             0    5 
   5 Column           0    0 # Clubs.FirstName
Stack:  s9[Liverpool](8)
   6 Column           0    1 # Clubs.Ground
Stack:  s7[Anfield](8)  s9[Liverpool](8)
   7 Callback         2    0 
   8 Next             0    5 
   5 Column           0    0 # Clubs.FirstName
Stack:  s7[Chelsea](8)
   6 Column           0    1 # Clubs.Ground
Stack:  s15[Stamford Bridge](8)  s7[Chelsea](8)
   7 Callback         2    0 
   8 Next             0    5 
   9 Close            0    0 
  10 Halt             0    0 
-----------------------------------------------------------------------------
To unsubscribe, send email to [EMAIL PROTECTED]
-----------------------------------------------------------------------------

Reply via email to