snowcrash+sqlite <[EMAIL PROTECTED]> wrote:
> whittling down the last few testsuite errors,
> 
>   % ./testfixture ../sqlite-3.3.8/test/conflict.test
> 
> 
> the tests that FAIL, all have config param "t0 == 0", where,
> 
> 
> i _think_ that's the "what" in this error.
> 
> now, the "why" ...
> 
> ideas?
> 

Recompile testfixture with debugging (-g) turned on.  Then modify
the conflict.test script as follows:

  *** conflict.test       17 Jan 2006 09:35:02 -0000      1.27
  --- conflict.test       3 Jan 2007 12:29:28 -0000
  ***************
  *** 309,314 ****
  --- 309,315 ----
        if {$conf1!=""} {set conf1 "ON CONFLICT $conf1"}
        execsql {pragma temp_store=file}
        set ::sqlite_opentemp_count 0
  + if {i==2} btree_breakpoint
        set r0 [catch {execsql [subst {
          DROP TABLE t1;
          CREATE TABLE t1(a,b,c, UNIQUE(a) $conf1);

Bring up your debugger (gdb?) and set a breakpoint on the C
routine "btree_breakpoint".  Run the conflict.test script.  The
script will stop just before running test 6.2.  Then set a breakpoint
on the function sqlite3pager_opentemp.  Continue until this second
breakpoing is hit.  Now single-step through sqlite3pager_opentemp
and figure out why the sqlite3_opentemp_count variable is not
being incremented.  If it is being incremented, figure out why
this variable is somehow different from the sqlite3_opentemp_count
variable found in test1.c.  Might be some kind of strange linker
problem....

--
D. Richard Hipp  <[EMAIL PROTECTED]>


-----------------------------------------------------------------------------
To unsubscribe, send email to [EMAIL PROTECTED]
-----------------------------------------------------------------------------

Reply via email to