Welp, you have really a few options, see if the app writing the file has a lock on it, or check to see if the size of the file is changing for x number of seconds. The C::Bzip2 module failing on decompress will tell you that A: the file is corrupt or B: the file is not all downloaded. You also could try to take the update of the file (Net::FTP etc) into your script so you KNOW when the transfer is complete or if it is a partial. IMHO this is the best route so you don't "spin cycles" checking to see if the file is complete, new or such.
-Waswas | [reply] |