sub blob_path {
my ( $self, $data, $path ) = @_;
- my $blob = $self->{pid}->{ $data->{pid} }->{dir} || die "no dir for $data->{pid} in ",dump( $self->{pid} );
+ my $blob = $self->{pid}->{ $data->{pid} }->{dir};
+ if ( ! $blob ) {
+ warn "ERROR: $data->{pid} not found, possible restart?";
+ $self->init_pid_login( $self->{pid}, $data->{login} );
+ $blob = $self->{pid}->{ $data->{pid} }->{dir} || die "no dir for ", dump( $self->{pid}->{ $data->{pid} } );
+ }
$blob .= '/' . ( defined $path ? $path : $data->{file} );
return $blob;
}
my $md5 = $data->{md5} || die "no md5 in ",dump $data;
my $path = $self->blob_path($data);
+ if ( ! -e $path ) {
+ warn "ERROR missing path $path";
+ return;
+ }
+
my $pool_md5 = "$pool/$md5";
if ( -e $pool_md5 ) {