Recursive NER

jschulz

Member
Hi List!

I have run into a bit of a quandry. I have created a recursive NER that works great, as long as it only recurses 7 times or fewer. If you ask it to do more it will just stop executing code after running seven iterations. Has anyone tried this before? Am I hitting a memory limit? Since I was using a rather large variable in my data structure, I made it a 1/3 of the size, but still only 7 times. Any ideas? BSFN is running locally. Let me know if you need any more info.
 
All locals will be allocated in stack, so you are probably running out of stack - this is a very common issue with recursive code.

The size of the variable may not matter, as it's likely to be allocated as a pointer.

The default stack size is hard-coded in the EXE (ActivConsole.EXE, etc.) and, generally speaking, can be adjusted with third-party tools, but this will add to the overall app memory requirements for every thread, so I have only heard of users making it smaller, not larger.

Another idea is that any recursive code can be re-written to not be recursive.
 
You might want to cut/paste the code in a 'C' function. I suggest you create a local function in 'C' and call it directly instead of using CallOblect which probably has it's limits as well.
 
Any log informations?
I had a couple of task where deeper recursions ran as well... As far as I remember. If you bsfn stops working there may be a reason for this in jde.log or jdedebug.log.
Regards:
Gergely Pongrácz
e-Best, Hungary
 
Back
Top Bottom