in reply to Net::FTP & Broken pipe error

It's unlikely that Net::FTP is the actual culprit. Can you FTP the files successfully using, say, a command-line client?

Nonetheless, a couple of things that may be worth trying: See if reducing the block size helps: $ftp_customer = Net::FTP->new(..., BlockSize => 1024);This will likely make things slower too, but may be able to keep from choking the receiving server (if indeed that's the problem).

You may also want to try breaking up the files into chunks and transmitting them individually. Try it with just one file and a command-line or GUI FTP client first before investing time writing it into your program.

HTH

Replies are listed 'Best First'.
Re^2: Net::FTP & Broken pipe error
by waswas-fng (Curate) on Sep 09, 2004 at 15:47 UTC
    or set the timeout for a longer period (it defaults to 2 minutes):
    $ftp_customer = Net::FTP->new(..., Timeout => 300);


    -Waswas
      Thanks guys very much for the sugestions, I apologize for taking so long to get back, pulled in 100 directions. Anyway, I tried both the time-out and bolk size reecomendations with no success. I also tried breaking them up into multiple zip files earlier, then appending them to the server. This also acting prety funky on the ftp server side so I stopped. The other end needs the file to end in one chunk so I think sending n number of puts is out. Another thing I've looked at is trapping the $SIG, and either ignoring it or pushing past it but that hasnt panned out either. All the while, when I send to other remote FreeBSD servers it works fine. I thing catching or detecting this broken pipe $SIG is going to be the key.