I have been using the fork package on a cluster to spawn jobs. I have noticed that I end up with many "R defunct" (zombie) processes following the use of fork that do not die completely until I close down R. Initially, I thought it may be my code but I ran the example from the latest fork package (see code below) on R.2.3.1 and ended up with the same problem. The code from the fork package that results in the R defunct processes is as follows: { pid = fork(slave=NULL) if(pid==0) { cat("Hi from the child process\n"); exit() } else { cat("Hi from the parent process\n"); } I am running R-2.3.1 Suse10 linux but the same error also occurs with R.2.2.0. I thought R-dev would be the most useful place but please suggest another mailing list if this is in appropriate. Thanks, Bill
On 12/15/2006 8:30 AM, billk01 wrote:> I have been using the fork package on a cluster to spawn jobs. I have > noticed that I end up with many "R defunct" (zombie) processes following > the use of fork that do not die completely until I close down R. > Initially, I thought it may be my code but I ran the example from the > latest fork package (see code below) on R.2.3.1 and ended up with the > same problem. The code from the fork package that results in the R > defunct processes is as follows: > > { > pid = fork(slave=NULL) > if(pid==0) { > cat("Hi from the child process\n"); exit() > } else { > cat("Hi from the parent process\n"); > } > > I am running R-2.3.1 Suse10 linux but the same error also occurs with > R.2.2.0. > > I thought R-dev would be the most useful place but please suggest > another mailing list if this is in appropriate.Generally problems with contributed packages should be reported to the maintainer, in this case Greg Warnes. You can get his email address from the DESCRIPTION file in the package, or library(help=fork). Please also see whether the error occurs in the almost-released 2.4.1, available on CRAN. (This might not be relevant to your problem with fork, but the more testers, the better!) Duncan Murdoch
On Fri, Dec 15, 2006 at 08:30:05AM -0500, billk01 wrote:> I have been using the fork package on a cluster to spawn jobs. I have > noticed that I end up with many "R defunct" (zombie) processes following > the use of fork that do not die completely until I close down R. > Initially, I thought it may be my code but I ran the example from the > latest fork package (see code below) on R.2.3.1 and ended up with the > same problem. The code from the fork package that results in the R > defunct processes is as follows: > > { > pid = fork(slave=NULL) > if(pid==0) { > cat("Hi from the child process\n"); exit() > } else { > cat("Hi from the parent process\n"); > } > > I am running R-2.3.1 Suse10 linux but the same error also occurs with > R.2.2.0.This is what happens if you don't call wait (as the documentation of fork demonstrates in an example, if I recall correctly). Best regards, Jan -- +- Jan T. Kim -------------------------------------------------------+ | email: jtk at cmp.uea.ac.uk | | WWW: cmp.uea.ac.uk/people/jtk | *-----=< hierarchical systems are for files, not for humans >=-----*