Stas Bekman <[EMAIL PROTECTED]> writes: > David Dyer-Bennet wrote: >> David Dyer-Bennet <[EMAIL PROTECTED]> writes: >> >>>I'm running into flakoid behavior in a script that uses Image::EXIF to >>>read file information under mod_perl (via Apache::Registry). >>>Sometimes, without throwing any error or setting the internal error >>>variable, Image::EXIF reads nothing from the file. I can't correlate >>>it with anything; a random string of reloads will start producing >>> different results at a random point. >> Not solved yet; but setting the same script up as a CGI instead >> (i.e. copying into /cgi-bin/), it works fine; whatever the problem is >> it's definitely caused by running under mod_perl. And now that I'm >> not changing the script so often, I see that it seems >> to always (nearly always?) run correctly the first time after I change >> it, and after that it mostly finds null EXIF data. I see a very >> *very* rare case where it comes up with the right data, so it's not >> 100.00% failure on reload, but it's close. Still looking for clues! > > David, take a look at: > http://perl.apache.org/docs/1.0/guide/debug.html#Debugging_your_code_in_Single_Server_Mode > to avoid guessing. If you have a problem in your code, you will see it > immediately on the second request. > > Most likely it's the fault of the module that you are using. Perhaps > it wasn't written in mind to run under mod_perl. I'd look there > first. Look for globals first. Then see if there are initialized on > each request. My guess is that this is your problem. Under mod_cgi you > can't see that since there is no interpreter persistance. Take some > time to read: > http://perl.apache.org/docs/1.0/guide/porting.html#Global_Variables_Persistence
Thanks for the pointers. I've looked at the module code, and the perl part of it doesn't seem to use global variables or anything nasty. However, it's just a wrapper around some C code. I'm not sure I want to start debugging this at that level tonight; I just wanted to drain the swamp! I'm now looking at Image::ExifTool, which has a much more recent date and a higher version number :-); maybe it works! -- David Dyer-Bennet, <mailto:[EMAIL PROTECTED]>, <http://www.dd-b.net/dd-b/> RKBA: <http://noguns-nomoney.com/> <http://www.dd-b.net/carry/> Pics: <http://dd-b.lighthunters.net/> <http://www.dd-b.net/dd-b/SnapshotAlbum/> Dragaera/Steven Brust: <http://dragaera.info/> -- Report problems: http://perl.apache.org/bugs/ Mail list info: http://perl.apache.org/maillist/modperl.html List etiquette: http://perl.apache.org/maillist/email-etiquette.html