http://qs321.pair.com?node_id=884809


in reply to Re: Interpreter eval counter out of bounds
in thread Interpreter eval counter out of bounds

Do you have the ability to log the evals it's executing, in order to see whether the eval compile warnings/errors make any sense?
In theory yes, but I assume impact on performance would be unacceptable as well as the log files themselves would be difficult to manage (log rotation would happen too quickly). I have not been able to reproduce the problem outside of a specific production environment with certain difficult-to-change log requirements.
--
No matter how great and destructive your problems may seem now, remember, you've probably only seen the tip of them. [1]
  • Comment on Re^2: Interpreter eval counter out of bounds

Replies are listed 'Best First'.
Re^3: Interpreter eval counter out of bounds
by flexvault (Monsignor) on Jan 28, 2011 at 14:16 UTC

    I have a perl daemon that in principle (unless stopped or restarted) will run forever. . .

    All of our production scripts restart themselves after some time is passed, ( i.e. 4-hours, 24-hours, etc. ).

    If you have 'cron' you might want to restart the process periodically. If you can't use 'cron' then the script can test on how much time has passed and use 'system' to restart itself and then exit.

    Your script will be happy with a fresh start.

    "Well done is better than well said." - Benjamin Franklin

      use 'system' to restart itself and then exit.

      Your script will be happy with a fresh start.

      Except that when using system, the old process doesn't go away; it'll wait for the new one to finish.

      Daemons restarting itself is a classical trick. But you got to use exec, not system. You want to replace yourself with the new instance, not create an additional one.

        JavaFan,

        You are correct, but we do use 'system', however, the command that we issue has a " \&" at the end, so in our Unix environment, we're okay.

        I just checked the code on one of the scripts, and realized that I forgot how it was implemented. 'exec' would have been better.

        Thank you

        "Well done is better than well said." - Benjamin Franklin