I've created a small web application/form to allow clients to input DNS requests. It is written in CGI::Application and has 3 modes... "summary" (main_handler), "submit" (submit_req), and "approval" (mail). Via inheritence, I'm also using HTML::Template to segregate the html.
Here's the problem... this script works great when run via standard CGI/perl. However, whenever I try to run it via mod_perl, it appears that the DBI responses are being cached in a mod_perl thread (or whatever it uses). This is a bad thing. FWIW, using (or not using) Apache::DBI doesn't make a difference.
Here's the pattern I've noticed when creating a series of sequential records (1st is A, 2nd is B, etc.). After restarting the named processes, everything works ok up until the 5th instance (E)...
a b c d
a a b c d e
a b a b c d e f
a a b c d e a b c d e f g
a b a b c d e f a b c d e f g h
As you can see, the data is "in there", but it's being prepended by some sort of random(?) cached data. The database does not reflect this odd behavior... everything is kosher in the table.
I've added the entire package to
fuzzyping's scratchpad. If there are specific portions of the code, or of the base cgi, HTML templates, or database structure that anyone would like posted here, please let me know. Thanks in advance for everyone's help!
-fuzzyping