duffdoerak has asked for the wisdom of the Perl Monks concerning the following question:

Maybe not a real Perl question. But it is a Perl experience. My Perl scraping script works ok, but... It stops after 2 minutes and I am sure that the job is not finished. Scraped data is correct, but not complete. It stops right in the middle of a command line. Not always at the same spot, not after a certain number of scraped data. Just when time is up, so does it seems, the script stops. There is no error message in the server error log. Script is running at Strato GmbH server. Could it be that there is some kind of time limit for running Perl scripts on the server? Hope that somebody has the solution. Update: Thanks for the suggestions. I will look into it. Hosting provider suggests to set max_execution_time in php.ini. I don't know if that also works for Perl. For the time being I adjusted the script in such a way that the job is done in three different runs to complete the job.

Replies are listed 'Best First'.
Re: Perl script stops after 2 minutes
by Perlbotics (Archbishop) on Aug 11, 2013 at 11:16 UTC

    I've heart of hosters that limit CGI resources, esp. with cheap tariffs, but I couldn't find a statement more specific than this one:

    We reserve the right to deactivate scripts that cause disruption to our servers.
    However, the symptoms you have described indicate that some kind of limitation is in place.

    Perhaps you can include this snippet into your CGI script and see if that returns something useful in the HTML source?

    $|=1; print "<!-- LIMIT DEBUG: \n", qx{ulimit -a 2>&1}, "\n-->\n"; #-- sh +ow process limitations (unix) $SIG{PIPE} = sub { print "<!-- SIGPIPE! -->\n"; }; #-- co +uld be caused by scraping

    Another option: use CGI::Carp 'fatalsToBrowser';

    Otherwise, ask support.

    Update: Following my own advice, I noticed that ulimit didn't work as advertised (returned nothing) :(

    Finally, this one worked with my setup (OpenShift), YMMV:

    print "<!-- ", qx{cat /proc/$$/limits 2>&1}, " -->\n";

Re: Perl script stops after 2 minutes (cgi timeout)
by Anonymous Monk on Aug 11, 2013 at 11:24 UTC