On 06/20/2011 07:04 PM, John Spackman wrote:
> On 17/06/2011 14:40, "thron7"<[email protected]>  wrote:
>
>> Ok, I don't know exactly where you cut the stack trace,
> I don't understand - the stack trace was straight from the output of the
> generator from just before the start of the stack trace to the end of the
> output?

Mh, this is somewhat strange. I mean, for one, if you get a stack trace 
for an exception that says "maximum recursion depth exceeded", and you 
know Python doesn't do any tail call optimization, you would assume that 
the stack trace sort of reflects the recursion. In other words: The 
stack trace should have sort of 1,500 entries, right?! But your stack 
trace holds only 16 stack frames, which is kind of weird...

Also, every entry in the stack trace usually has the code line that was 
executed in that function, but your stack trace doesn't have those, 
except for the first two.

I can sort of reproduce the issue with your bug-attached file, and I get 
a stack trace of several hundred entries, which matches more my 
expectation. Maybe your stack trace is corrupted in one way or another.

Your attached file will help, as it shows for example that it is not one 
long string in the source, but the concatenation of several smaller strings.


>
>> but it's quite
>> obvious that the exception occurs during recursive dependency analysis.
>> What order of magnitude are we talking about here, in terms of total
>> classes used in the app? I've seen apps with way beyond 1,000 classes
>> doing fine. How big is your app roughly?
> Only hundreds of classes - there are just under 230 in total and many are
> not used for this app (this is a server app so it's pretty small so far).

I'm not sure about this anymore, meaning the dependency analysis. In my 
quick test with your file it bombs in the compiler, when it tries to 
produce the compressed output. Were you running a  'build' job?! Does it 
work in 'source'?! - Please add those information to the bug.

> The class being compiled has a 10,000 character string split over 180
> lines and it as was this grew that the error popped up.  But moving that
> string into a basic "create-application" app and the problem didn't appear.

That might just depend on how much classes are involved with the app, 
and what else is on the stack when the deep recursion appears. The 
skeleton app might have missed the issue just by a couple of stack frames.


> Is there a chance that the the dependency analysis might pick up something
> from the contents of a string, eg are there regex expressions that might
> end up scanning the string?

As I said, in my quick test it wasn't the dependency analysis.

>> You might open an enhancement bug for this. Attach this stack trace, and
>> add that an iterative exploration of the class list might help.
> Done - http://bugzilla.qooxdoo.org/show_bug.cgi?id=5265

Ok, seen that. I will continue work on that in the bug.

T.


------------------------------------------------------------------------------
EditLive Enterprise is the world's most technically advanced content
authoring tool. Experience the power of Track Changes, Inline Image
Editing and ensure content is compliant with Accessibility Checking.
http://p.sf.net/sfu/ephox-dev2dev
_______________________________________________
qooxdoo-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/qooxdoo-devel

Reply via email to