Factor submission problems [FIXED]
All,
I've looked long and hard at the broken factor submission script. We've ruled out code / scripting problems, but still don't know for sure what's going on. The submission script's Perl environment is behaving completely unpredictably -- for some factors, I can make it work simply by inserting a print statement in a certain spot. I've seen this behavior caused by memory corruption in low-level languages, but that shouldn't be possible in Perl. And I even rewrote a different factor submission script, from scratch, independent of Louie's code, and it still exhibited the same unpredictable behavior.
We also reverted to the old kernel, but this did not fix the problem.
We do have more things to try:
1 - Upgrade Perl. We're still running the 5.6 series, so it's severely due for an upgrade anyway. This isn't a trivial upgrade, though, with the modules we're using.
2 - Rewrite the factor submission script without the use of an external verification program. The "random" behavior only comes out when Perl tries to invoke an external process. There are large-integer modules for Perl we can use to avoid having to start a new process. So far I haven't seen any problems or strange behavior with internal Perl code.
Unfortunately I can't do either of these tonight, but we should be able to do #1 by the weekend. If we're still having problems then, we'll look at rewriting the script.
Until then, keep track of your unverified factors so they can be submitted later. You can keep trying the script if you want; the worst it can do is reject them.
Sorry!
Re: Re: how about another
Quote:
Originally posted by kugano
Maybe not.
I just asked. I wish that this can help.... =(((
Re: Re: Re: how about another
Quote:
I just asked. I wish that this can help.... =(((
Sorry! You caught me in a grumpy mood this morning. I should probably avoid reading messages until I'm fully awake and able to exercise social restraint. :)
Anyway, for now, we're sticking with Perl. I strongly dislike PHP for many reasons that aren't really applicable to the discussion, and C++ is widely regarded as an inappropriate language for interactive web development. The bottom line is that Perl should work, and the fact that it isn't working means there's a problem with our installation. The language itself isn't at fault. We just have to find out what part of Perl we broke and fix it. Or upgrade to 5.8, which is a really good idea anyway!