xsharp.eu • Number of recursive calls in VO
Page 1 of 1

Number of recursive calls in VO

Posted: Wed Jul 26, 2023 10:06 am
by Gorazd
Please help, since I am totaly stuck with the following. Any suggestion from the VO gurus would be appreciated!

Since I am having problem with "Kid Stack Size Limit Exceeded" I did a simple test.
I wrote a function Recursion_test() which I called recursively. The function gets called 664 times and then throws error "Kid Stack Size Limit Exceeded".
Given the fact that there are no additional objects instanciated and no additional variables initialized I expected the error would be corrected by assigning proper value to SetKidStackSize(), but this was not the case. It seems there is another limitation set in CAVO which I do not know how to remove.

This is the function:
FUNCTION Recursion_test(nLevel)
Default(@nLevel,1)
nLevel:=nLevel+1
Recursion_test(nLevel)
RETURN

And these are values when error occurs:
Memory(MEMORY_STACKKID) 678, SetKidStackSize(0) is set to 8192
Memory(MEMORY_REGISTERKID) 65, SetMaxRegisteredKids(0) is set to 10000
Memory(MEMORY_REGISTERAXIT) 222, SetMaxRegisteredAxitMethods(0) is set to 64000
MEMORY_STACK_SIZE 1069056, MEMORY_STACK_FREE 1035688
MEMORY_REGISTEREXIT_COUNT 3

As you can see none of the parameters is over the limit.

So the question is: how to rise the number of recursive calls in VO?

Gorazd

Number of recursive calls in VO

Posted: Wed Jul 26, 2023 2:18 pm
by robert
Gorazd,
There is no easy way to fix this.
The best way is to avoid recursion like this.
And VO is dead, so you will have to live with this limitation in VO.

In X# I can get a bit further (36000 iteration).

Robert

Number of recursive calls in VO

Posted: Thu Jul 27, 2023 5:25 pm
by Gorazd
Well, I was hoping for better reply :-)
Anyway, thanks for the information.
Gorazd