Gossamer Forum
Home : Products : Links 2.0 : Installation -- Unix :

telnet nph-verify stops with "Broken Pipe"

Quote Reply
telnet nph-verify stops with "Broken Pipe"
I just moved from CIhost to FutureQuest.net, and while nph-verify.pl worked on my 1132 link database via telnet on CIhost (perl 5.004) on Futurequest.net (perl 5.005) nph-verify verifies 10-12 links over a period of 10 seconds, then sits for 5 minutes, and then returns "BROKEN PIPE" and ends back to the command prompt.

Here is an example:
In Reply To:
$ perl nph-verify.pl
HTTP/1.0 200 OK
Content-type: text/html

Link Checking started: 4-Jun-2000 20:27:35
Registering URLs ...
100 200 300 400 500 600 700 800 900 1000 1000
1100
Done.

Links to check '1113' using HEAD method. Please be patient...

Checked 504 - Success (200). Message: OK
Checked 110 - Success (200). Message: OK
Checked 7 - Success (200). Message: OK
Checked 6 - Success (200). Message: OK
Checked 3 - Success (200). Message: OK
Checked 2 - Success (200). Message: OK
Checked 1 - Success (200). Message: OK
Checked 5 - Success (200). Message: OK
Checked 4 - Success (200). Message: OK
Checked 8 - Success (200). Message: OK
Checked 10 - Success (200). Message: OK
Broken Pipe
$
I asked Futurequest, and here is their response:

In Reply To:
I strace() the program and found it hanging on the following IP:
216.3.41.56

It should timeout and resume operation, but for some unknown reason, the Links include perl modules/libraries are in fact not timing out...

For some reason, the alarm() is set, but somewhere in your program that signal $SIG{'ALRM'} is being masked...

You may want to use our FQuest core modules instead as LWP is fully installed, as well as many many others...

If you want to see the results, just view the following file:
trace.one

I tried to run this 3 times, and all 3 times it failed on the same IP...

Hope this helps...
Can anyone who knows more than I shed some light on what is going on, or advise me how to modify nph-verify.pl to correspond to Futurequest's recommendation? (The same database and nph-verify.pl works on the other server, so I don't think the database is corrupt. I have the badlinks mod installed, so I tried returning to the original nph-verify.cgi but this yielded the same result.)

Thanks for any ideas or suggestions in advance.



Quote Reply
Re: telnet nph-verify stops with "Broken Pipe" In reply to
Hmm...interesting...Well...I don't know exactly what your hosting company is referring to...I will try to investigate it and see what I come up wiht...but no gaurantee.

Regards,

Eliot Lee
Quote Reply
Same here - nph-verify stops with "Broken Pipe" In reply to
I have not been able to run this for about 8 months, and it is getting very difficult to keep up with the broken links. So....I decided to do a "test" install in another directory this morning, place a few links out there, and run the nph-verify. Of course, it ran great.

Now I just need to find out what is causing it to get the "broken pipe" on the actual database.

Any ideas would be greatly appreciated.

Rick


Quote Reply
Re: Same here - nph-verify stops with "Broken Pipe" In reply to
In Reply To:
Now I just need to find out what is causing it to get the "broken pipe" on the actual database.
I don't know...other than that there is a link in your database that is timing out the verification process, thus causing the broken pipe.

Regards,

Eliot Lee
Quote Reply
Re: Same here - nph-verify stops with "Broken Pipe" In reply to
Well, I just installed the Hold Links mod and moved the link which before was causing verify to stop after 12 links. Now, with this removed from the links.db, nph-verify goes through 50-75 links and stops on
Code:
Checked 149 - Success (200). Message: OK
But I gather that the link it stops on is not the problem - it seems like it's doing many verifies in parallel and maybe when the combination of 'timeouts' happens it hangs, so it might not even be any one specific link (?)

Would a possible solution be to force verify to use IO:Socket vs. parallel?