[Orca-users] Re: defunct processes even in Orca 0.27b2

Blair Zajac blair at orcaware.com
Mon Oct 15 15:35:39 PDT 2001


Well, it was supposed to be fixed.

I can't reproduce the problem myself with my current setup, so somebody with
the problem will have to figure out why its not working and come up with a
patch.

The relevant code to look at is in lib/Orca/OpenFileHash.pm and
lib/Orca/SourceFile.pm.

One question though, when Orca runs, can it find the proper uncompression
program, in this case 'gunzip'?  The message may be about gunzip, not the
compressed file.

Also, the attached patch will help the warning messages a bit.

Blair

prasadjlv at yahoo.com wrote:
> 
> Folks,
> 
> I have been using Orca 0.27b2 for a week and I am still finding a lot
> of defunct processes. I thought this was fixed in this version?
> 
> In Orca's log I am noticing a lot of "cannot open ..../perlcol*.gz
> file for reading: No such file or directory" but the file does exist
> on my system. Is there something wrong with my setup?
> 
> Thanks in advance,
> --prasad
-------------- next part --------------
--- ../orca-0.27b2/lib/Orca/OpenFileHash.pm	Fri Aug 24 09:53:03 2001
+++ lib/Orca/OpenFileHash.pm	Mon Oct 15 15:27:27 2001
@@ -71,13 +71,14 @@
     $is_pipe = 0;
   }
 
-  # Try to open the file or pipe.  If the pipe fails and if there are
+  # Try to open the file or pipe.  If the open fails and if there are
   # other opened files, then reduce the maximum number of open files.
   # If this is the first open file and the pipe fails, then do not
   # attempt to open it again.
+  my $open_error = 0;
   while (!open(FD, $filename)) {
     warn "$0: warning: cannot open `$filename' for reading: $!\n";
-    my $num_current_open_files = (keys %{$self->[I_HASH]});
+    my $num_current_open_files = keys %{$self->[I_HASH]};
     return unless $num_current_open_files;
     $num_current_open_files -= 2;
     return if $num_current_open_files <= 4;
@@ -85,6 +86,11 @@
          "$num_current_open_files.\n";
     $self->[I_MAX_ELEMENTS] = $num_current_open_files;
     $self->_close_extra($num_current_open_files-1);
+    $open_error = 1;
+  }
+
+  if ($open_error) {
+    warn "$0: warning: finally able to open `$filename' for reading.\n";
   }
 
   $self->add($fid, $weight, *FD, $is_pipe);


More information about the Orca-users mailing list