in reply to Re^4: Spurious "Invalid Argument" on file open
in thread Spurious "Invalid Argument" on file open
A race condition could happen, if something changes to the file between the time I check the existence, and the time I read the file. However, the file is pretty static:
With the network involved, it doesn't have to be the file that changed. Any temporary resource state in the fabric between you and the actual file could -- breifly -- manifest itself as in an inability to open the file.
I'd suggest cutting out the possibility of a race by just opening the file. And if the open fails, retry some number of times before logging an error:
for my $try ( 1 .. RETRIES ) { if(open(my $rule_fh,'<',$rule_file)) { last; } if( $try == RETRIES ) { die "Can not read file $rule_file : $! / $^E"; } }
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re^6: Spurious "Invalid Argument" on file open
by rovf (Priest) on Oct 24, 2012 at 13:50 UTC | |
by BrowserUk (Patriarch) on Oct 24, 2012 at 14:15 UTC | |
by rovf (Priest) on Oct 24, 2012 at 14:33 UTC |