[Bioperl-l] Bio/DB/SeqFeature/Store/DBI/mysql.pm patched

Cook, Malcolm MEC at stowers-institute.org
Fri Apr 6 20:34:37 UTC 2007


Lincoln,

I just commited a patch to Bio/DB/SeqFeature/Store/DBI/mysql.pm which
avoids potential problem which, unless fixed, can generates warnings
that look like this:

prepare_cached(SELECT f.id,f.object
  FROM feature as f, typelist AS tl
  WHERE (   tl.id=f.typeid
   AND   (tl.tag LIKE ?)
)
  
) statement handle DBI::st=HASH(0x16f61c0) still Active at
/home/mec/cvs/bioperl-live/Bio/DB/SeqFeature/Store/DBI/mysql.pm line
1427
DBD::mysql::st fetchrow_array failed: fetch() without execute() at
/home/mec/cvs/bioperl-live/Bio/DB/SeqFeature/Store/DBI/mysql.pm line
1416.

... as well as other downstream abberent program behaviour.  

I encounterd what the DBI manpage suggests might happen: "The results
will certainly not be what you expect"

This can happen, for example, when you open an iterator using
Bio::DB::SeqFeature::Store->get_seq_stream, and then while iterating,
perform other queries against the store.  My understanding of the DBI
doc is that this should only occur if the 2nd iterator is for the same
sql statement identically parameterized as the 1st, but I have not
proven beyond a doubt that this is what Bio::DB::SeqFeature::Store is
doing the way I am using it.  Nonetheless, the patch fixes my pipeline.

Cheers,

Malcolm





More information about the Bioperl-l mailing list