On Tue, Jan 19, 2010 at 07:14:11AM -0800, a1rex scratched on the wall:

 
> So, I coded accordingly.  I thought that I could keep the same handle to the 
> blob forever as long
> as I do not touch the row where my blob is located. At least that is my
> understanding of the documentation. 
>  
> Soon, I discovered that after some updates to other table my
> blob handle is no longer valid.  The
> problem was not consistent; some updates would invalidate the handle some 
> would
> not.  

  Incremental BLOB I/O handles depend on an internal statement.  As I
  understand it, any operation that invalidates statements will also
  invalidate all the current BLOB handles.  For example, I'm fairly
  sure changing the schema (any CREATE..., DROP..., etc.) will
  invalidate all BLOB I/O handles.  I haven't verified this, but my
  (small) understanding of the code makes me believe this is true.

  As you're aware, there are other reasons a handle can become invalid.

  I'd turn on tracing so that you have an exact record of all the
  statements that are executed.  When you hit a handle error, start
  looking through the trace log to see what might be causing it.

   -j

-- 
Jay A. Kreibich < J A Y  @  K R E I B I.C H >

"Our opponent is an alien starship packed with atomic bombs.  We have
 a protractor."   "I'll go home and see if I can scrounge up a ruler
 and a piece of string."  --from Anathem by Neal Stephenson
_______________________________________________
sqlite-users mailing list
sqlite-users@sqlite.org
http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users

Reply via email to