[Rd] tests/ok-errors.R ## bad infinite recursion

George Georgalis george at galis.org
Sun May 25 04:53:56 CEST 2008


On Sat 24 May 2008 at 10:27:57 PM -0400, George Georgalis wrote:
>On Sat 24 May 2008 at 08:04:03 AM +0100, Prof Brian Ripley wrote:
>
>Well we have been digging a little deeper, here is a ktrace
>http://pastebin.ca/1028465
>

I didn't see this part of your responce before...

>>> However, isn't the purpose of the test to identify if something is
>>> wrong? The problem is: there was _no_failure_ when the ulimit was
>>> reached!  When the stack limit is reached the process adds 1 to
>>> the load and does not log or return.
>>>
>>> An arbitrary amount of stack may be used before a 'recursive
>>> infinite loop is invoked' so just raising the ulimit doesn't
>>> fix anything other than making the test pass, it just hides the
>>> problem.
>>
>> Your assertion is simply wrong -- the amount is not 'arbitrary'.

are you saying, no matter what the context, the R process will
always use the exact (or near enough) amount of stack and will
always begin counting from 0 to the ulimit?


>>> At this point I'm looking for a consensus as to whether the shell,
>>> kernel, or R should kill the process when the stack (or another)
>>> ulimit is reached.
>>
>> R (where possible) stops this being reached -- you seem unfamiliar with the 
>> R manuals.

The failure to exit on SIGSEGV seems pretty clear; I am
not unfamiliar with the R manuals but I've not read them
all either. Is there something in particular I should be
looking at regarding this?

// George


-- 
George Georgalis, information system scientist <IXOYE><



More information about the R-devel mailing list