Main Stories
Slash Boxes

Slash Open Source Project

Slashcode Log In

Log In

[ Create a new account ]

Article Poll

Poll I found this article to be
Very Helpful
Helpful
Not Helpful
Not Very Helpful
[ Results | Polls ]
Comments:0 | Votes:0

freshenup.pl / prog2file hanging (again)

posted by Krow on 12:17 PM February 27th, 2003   Printer-friendly   Email story
I know this has been asked before, but I've been doing some digging and I can't see any answers to the problems that quite a few people seem to have been hitting.

The issue is that slashd stops working, and it appears to be when it calls prog2file(), and I'm assuming that the line in prog2file() is the backticked execution of the command passed.

There are previous threads regarding this here and here, and I've seen other discussions away from SlashCode too. These threads all just seem to peter out without any resolution.

Here's my question: I've removed the last two calls to prog2file from freshenup.pl, and slashd now keeps going fine, and my site still seems to be working... what have I broken by removing these calls? Is this wise (I suspect not) :)

And has anyone resolved this issue???

This discussion has been archived. No new comments can be posted.
The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
 Full
 Abbreviated
 Hidden
More | Login
Loading... please wait.
  • Oh Stop!!! Don't all talk at once :)

    Well, I know others have hit this issue, and as a workaround, I can say that deleting the last two calls to prog2file from freshenup.pl has definitely cured the hanging problem.

    Trouble is, I haven't had the time to work out what functionality I've removed by doing this. But my slashsite has been up for a week now and it seems to be doing everything right...

    Hope this helps some of the people that have been seeing this issue. I'll post more findings as/when I get the chance.

    --

    This sig is free; you can redistribute it and/or modify it under the terms of the GNU General Public License.

    • I have the same problem on my sites. Have you noticed any problems? I did a little digging, and this is what I found:

      In file Slash/Utility/System/System.pm, prog2file is defined as a function that executes the specified system program/executable and sends the output from that program to a specified file.

      Within freshenup.pl, it appears to be used to create a .shtml file from the .pl file for each of your sections and index.pl. Mine seems to hang occasionally on article.pl. It starts prog2file but never finishes (and never gets to the point in prog2file where the status is logged).

      I don't generally refer users to the .shtml files, as my system doesn't have any anonymous users (except for background processes, load balancers, etc..) and generally doesn't carry a very heavy load (load avg seldom > 0.2). I often see complaints in slashd.log about missing ssi templates, which I could quell by just creating them (or moving around the ssi templates).

      Bearing all of this in mind, I intend on removing that part of the freshenup.pl task and seeing what happens for myself.
      • Yes, your findings exactly tally with mine. I still don't quite understand why the shtml files are created when the site runs from the .pl files (you seem to understand that a bit more than I do at this stage... I haven't had a moment to investigate further). Is it a mechanism to offload some processing to obviate the dreaded "slash dot" effect?

        My site is very lightly loaded. I still have full functionality since removing the calls.

        --

        This sig is free; you can redistribute it and/or modify it under the terms of the GNU General Public License.

        • The shtml files are generated for anonymous users. I'm not sure if anonymous users *always* get the shtml version, or only get it under a heavy load. I seem to recall something about it in the code. A quick search finds:

          # find Slash/ |xargs grep -l shtml
          Slash/Apache/Apache.pm - indexHandler will send default traffic to index.shtml if db is off or user is anon.
          Slash/DB/MySQL/MySQL.pm
          Slash/DB/Static/My SQL/MySQL.pm
          Slash/Utility/Data/Data.pm
          Slash/Ut ility/Display/Display.pm
          Slash/Utility/Environmen