[R] R unstable and crashes after executing .C
Sole Acha, Xavi
x.sole at iconcologia.net
Wed Feb 21 12:08:16 CET 2007
Dear R listers,
I have developed a C function to be executed from R through the ".C" interface. After doing dyn.load, the function executes properly and I get the results. However, after executing my function, R seems to get unstable and crashes (giving a segmentation fault and exiting) whenever I try to do ANYTHING with a relatively large object (creating a new one or even just writing the name of an existing one).
I use R 2.4.0 under a Linux machine with 1 GB RAM. Below there is an example of execution, so you can get an idea of what is happening:
--------------------
dyn.load("my_C_module.so");
res <- .C("my_C_function",.....); #The function executes fine and res is ok
dyn.unload("my_C_module.so") #I know this isn't strictly necessary
#Here R is still running, but when I execute:
m <- matrix(0,1000,100); #I try to create a new object and R crashes
*** caught segfault ***
address 0x10, cause 'memory not mapped'
Traceback:
1: matrix(0, 1000, 100)
Possible actions:
1: abort (with core dump)
2: normal R exit
3: exit R without saving workspace
4: exit R saving workspace
--------------------
Although I tell R to abort and give me the core dump, it doesn't succeed in doing so.
I would be grateful if anyone could tell me what could be the problem with my C function that makes R behave this way?
Thank you very much in advance, and apologies for this long email.
Xavier Solé.
More information about the R-help
mailing list