Wise ones,
I'm using HTML::Mason for the web interface for a lib used to configure network hardware over telnet.
Everything seemed to work nice and smooth, until I tried this outside my lab environment.
Several places in my code I have things like this:
print STDERR "Going to call longfunction()\n";
my $val=$nethard->longfunction();
print STDERR "After the call to longfunction()\n";
longfunction executes several telnet commands, depende on the exact longfunction.
The behavior I don't understand is that the first message is correctly printed, the longfunction is called, and looks to terminate ok, but any code after that is skipped, as if each component had a timeout, that I can't find anywhere, and that terminate the component.
Even if this is the case (which I thing is strange, once I had - and still have - Mason pages with queries that execute for several minutes), I think some error should be logged to STDERR (apache error_log) and it isn't.
Any idea? Anyone know what I should look for?
Thank you very much every one.
Update: did found the problem. It was a timeout in Net::Telnet that turned into a die (cmd call without -errmode=>'return'). Still confuse me anyway, as I expected that nothing after that component call should display, and expected the die to be displayed as a mason error, as every other die, and that doesn't happen. The page renders completly just as if the component did return ok.