[Rd] as.data.frame segfaults on large lists (PR#8141)

Ulrich Poetter ulrich.poetter at ruhr-uni-bochum.de
Sun Sep 18 19:54:37 CEST 2005


Peter Dalgaard writes:
 > ulrich.poetter at ruhr-uni-bochum.de writes:
 > 
 > > Full_Name: Ulrich Poetter
 > > Version: 2.1.1
 > > OS: i686-pc-linux-gnu FC2
 > > Submission from: (NULL) (134.147.95.187)
 > > 
 > > 
 > > as.data.frame() segfaults on lists with very many elements:
 > > 
 > > > dfn <- rep(list(rep(0,2)),198000)
 > > > test <- as.data.frame.list(dfn)
 > > 
 > > Process R segmentation fault at Sun Sep 18 17:06:02 2005
 > 
 > Not for me on FC4. The process size grows to about 180M and the system
 > thrashes badly, but the calculation runs to completion.
 > 
 > It's not unlikely that we are ignoring a failed allocation somewhere,
 > but there's not much hope of finding it from the available
 > information. You could try running under gdb and see where things go
 > wrong for you.
gdb says:

 dfn <- rep(list(rep(0,2)),198000)
 test <- as.data.frame.list(dfn)

Program received signal SIGSEGV, Segmentation fault.
0x08082416 in Rf_substituteList (el=0xa1c5634, rho=0x83ea668)
    at coerce.c:1973
1973	coerce.c: No such file or directory.
	in coerce.c
(gdb) bt
#0  0x08082416 in Rf_substituteList (el=0xa1c5634, rho=0x83ea668)
    at coerce.c:1973
[snip]
(I don't have the source handy). I have forgotten to say that R was
compiled with gcc 3.3.3.

All the best,
Ulrich Poetter



More information about the R-devel mailing list