Announcement

Collapse
No announcement yet.
X
  • Filter
  • Time
Clear All
new posts

    too much recursion Stack from error

    I upgraded an app from 3.0p-2012-04-26 to 3.1d-2012-09-29, and while the app behaviors seem to remain consistent, I get many of the following in the GWT console:
    Code:
    00:03:06.461 [ERROR] 11:31:09.861:TMR7:WARN:Log:InternalError: too much recursion
    Stack from error.stack:
    Log._getObjectID({Obj}) @ portal/sc/modules/ISC_Core.js:670
    [c]Log.getPriority(_1=>"listPolicy", _2=>{Obj}) @ portal/sc/modules/ISC_Core.js:670
    [c]Log.isEnabledFor(_1=>"listPolicy", _2=>5, _3=>{Obj}) @ portal/sc/modules/ISC_Core.js:674
    unnamed(5, "listPolicy") @ portal/sc/modules/ISC_Core.js:666
    unnamed("listPolicy") @ portal/sc/modules/ISC_Core.js:666
    [c]Canvas.applyStretchResizePolicy(_1=>[object Array], _2=>5884, _3=>1, _4=>true, _5=>{Obj}) @ portal/sc/modules/ISC_Foundation.js:654
    Layout._getMemberSizes(5884) @ portal/sc/modules/ISC_Foundation.js:291
    Layout.layoutChildren("resized", 8, 0) @ portal/sc/modules/ISC_Foundation.js:282
    Canvas._completeResizeBy(undef) @ portal/sc/modules/ISC_Core.js:1837
    Canvas.resizeBy(8, 0, undef, undef, undef) @ portal/sc/modules/ISC_Core.js:1835
    Canvas.resizeTo(5884, 22) @ portal/sc/modules/ISC_Core.js:1847
    Layout.resizeMembers([object Array], [object Array], true) @ portal/sc/modules/ISC_Foundation.js:245
    Layout.layoutChildren("resized", 8, 0) @ portal/sc/modules/ISC_Foundation.js:284
    Canvas._completeResizeBy() @ portal/sc/modules/ISC_Core.js:1837
    Canvas.moveBy(-8, 0, undef, true) @ portal/sc/modules/ISC_Core.js:1797
    Canvas.moveTo(-4924, 0, undef, true) @ portal/sc/modules/ISC_Core.js:1820
    Canvas.setRect(-4924, 0, 5958, 22) @ portal/sc/modules/ISC_Core.js:1605
    TabSet.placeControlLayout(5958) @ portal/sc/modules/ISC_Containers.js:241
    TabSet._controlLayoutChildResized() @ portal/sc/modules/ISC_Containers.js:242
    unnamed({Obj}, 8, 0, undef) @ portal/sc/modules/ISC_Containers.js:232
    unnamed(8, 0, undef) @ portal/sc/modules/ISC_Core.js:1840
    Canvas._completeResizeBy(undef) @ portal/sc/modules/ISC_Core.js:1839
    Canvas.resizeBy(8, 0, undef, undef, undef) @ portal/sc/modules/ISC_Core.js:1835
    Canvas.resizeTo(5876, 22) @ portal/sc/modules/ISC_Core.js:1847
    Layout.resizeMembers([object Array], [object Array], true) @ portal/sc/modules/ISC_Foundation.js:245
    Layout.layoutChildren("resized", 8, 0) @ portal/sc/modules/ISC_Foundation.js:284
    Canvas._completeResizeBy() @ portal/sc/modules/ISC_Core.js:1837
    Canvas.moveBy(-8, 0, undef, true) @ portal/sc/modules/ISC_Core.js:1797
    Canvas.moveTo(-4916, 0, undef, true) @ portal/sc/modules/ISC_Core.js:1820
    Canvas.setRect(-4916, 0, 5950, 22) @ portal/sc/modules/ISC_Core.js:1605
    TabSet.placeControlLayout(5950) @ portal/sc/modules/ISC_Containers.js:241
    TabSet._controlLayoutChildResized() @ portal/sc/modules/ISC_Containers.js:242
    unnamed({Obj}, 8, 0, undef) @ portal/sc/modules/ISC_Containers.js:232
    unnamed(8, 0, undef) @ portal/sc/modules/ISC_Core.js:1840
    Canvas._completeResizeBy(undef) @ portal/sc/modules/ISC_Core.js:1839
    Canvas.resizeBy(8, 0, undef, undef, undef) @ portal/sc/modules/ISC_Core.js:1835
    Canvas.resizeTo(5868, 22) @ portal/sc/modules/ISC_Core.js:1847
    Layout.resizeMembers([object Array], [object Array], true) @ portal/sc/modules/ISC_Foundation.js:245
    Layout.layoutChildren("resized", 8, 0) @ portal/sc/modules/ISC_Foundation.js:284
    Canvas._completeResizeBy() @ portal/sc/modules/ISC_Core.js:1837
    Canvas.moveBy(-8, 0, undef, true) @ portal/sc/modules/ISC_Core.js:1797
    Canvas.moveTo(-4908, 0, undef, true) @ portal/sc/modules/ISC_Core.js:1820
    Canvas.setRect(-4908, 0, 5942, 22) @ portal/sc/modules/ISC_Core.js:1605
    TabSet.placeControlLayout(5942) @ portal/sc/modules/ISC_Containers.js:241
    TabSet._controlLayoutChildResized() @ portal/sc/modules/ISC_Containers.js:242
    unnamed({Obj}, 8, 0, undef) @ portal/sc/modules/ISC_Containers.js:232
    unnamed(8, 0, undef) @ portal/sc/modules/ISC_Core.js:1840
    Canvas._completeResizeBy(undef) @ portal/sc/modules/ISC_Core.js:1839
    Canvas.resizeBy(8, 0, undef, undef, undef) @ portal/sc/modules/ISC_Core.js:1835
    Canvas.resizeTo(5860, 22) @ portal/sc/modules/ISC_Core.js:1847
    Layout.resizeMembers([object Array], [object Array], true) @ portal/sc/modules/ISC_Foundation.js:245
    Layout.layoutChildren("resized", 8, 0) @ portal/sc/modules/ISC_Foundation.js:284
    Canvas._completeResizeBy() @ portal/sc/modules/ISC_Core.js:1837
    Canvas.moveBy(-8, 0, undef, true) @ portal/sc/modules/ISC_Core.js:1797
    Canvas.moveTo(-4900, 0, undef, true) @ portal/sc/modules/ISC_Core.js:1820
    Canvas.setRect(-4900, 0, 5934, 22) @ portal/sc/modules/ISC_Core.js:1605
    TabSet.placeControlLayout(5934) @ portal/sc/modules/ISC_Containers.js:241
    TabSet._controlLayoutChildResized() @ portal/sc/modules/ISC_Containers.js:242
    unnamed({Obj}, 8, 0, undef) @ portal/sc/modules/ISC_Containers.js:232
    unnamed(8, 0, undef) @ portal/sc/modules/ISC_Core.js:1840
    Canvas._completeResizeBy(undef) @ portal/sc/modules/ISC_Core.js:1839
    Canvas.resizeBy(8, 0, undef, undef, undef) @ portal/sc/modules/ISC_Core.js:1835
    Canvas.resizeTo(5852, 22) @ portal/sc/modules/ISC_Core.js:1847
    Layout.resizeMembers([object Array], [object Array], true) @ portal/sc/modules/ISC_Foundation.js:245
    Layout.layoutChildren("resized", 8, 0) @ portal/sc/modules/ISC_Foundation.js:284
    Canvas._completeResizeBy() @ portal/sc/modules/ISC_Core.js:1837
    Canvas.moveBy(-8, 0, undef, true) @ portal/sc/modules/ISC_Core.js:1797
    Canvas.moveTo(-4892, 0, undef, true) @ portal/sc/modules/ISC_Core.js:1820
    Canvas.setRect(-4892, 0, 5926, 22) @ portal/sc/modules/ISC_Core.js:1605
    TabSet.placeControlLayout(5926) @ portal/sc/modules/ISC_Containers.js:241
    TabSet._controlLayoutChildResized() @ portal/sc/modules/ISC_Containers.js:242
    unnamed({Obj}, 8, 0, undef) @ portal/sc/modules/ISC_Containers.js:232
    unnamed(8, 0, undef) @ portal/sc/modules/ISC_Core.js:1840
    Canvas._completeResizeBy(undef) @ portal/sc/modules/ISC_Core.js:1839
    Canvas.resizeBy(8, 0, undef, undef, undef) @ portal/sc/modules/ISC_Core.js:1835
    Canvas.resizeTo(5844, 22) @ portal/sc/modules/ISC_Core.js:1847
    Layout.resizeMembers([object Array], [object Array], true) @ portal/sc/modules/ISC_Foundation.js:245
    Layout.layoutChildren("resized", 8, 0) @ portal/sc/modules/ISC_Foundation.js:284
    Canvas._completeResizeBy() @ portal/sc/modules/ISC_Core.js:1837
    Canvas.moveBy(-8, 0, undef, true) @ portal/sc/modules/ISC_Core.js:1797
    Canvas.moveTo(-4884, 0, undef, true) @ portal/sc/modules/ISC_Core.js:1820
    ...
    ...
    255 winword pages total...
    ...
    ...
        Canvas.resizeBy(8, 0, undef, undef, undef) @ portal/sc/modules/ISC_Core.js:1835
        Canvas.resizeTo(3060, 22) @ portal/sc/modules/ISC_Core.js:1847
        Layout.resizeMembers([object Array], [object Array], true) @ portal/sc/modules/ISC_Foundation.js:245
        Layout.layoutChildren("resized", 8, 0) @ portal/sc/modules/ISC_Foundation.js:284
        Canvas._completeResizeBy() @ portal/sc/modules/ISC_Core.js:1837
        Canvas.moveBy(-8, 0, undef, true) @ portal/sc/modules/ISC_Core.js:1797
        Canvas.moveTo(-2100, 0, undef, true) @ portal/sc/modules/ISC_Core.js:1820
        Canvas.setRect(-2100, 0, 3134, 22) @ portal/sc/modules/ISC_Core.js:1605
        TabSet.placeControlLayout(3134) @ portal/sc/modules/ISC_Containers.js:241
        TabSet._controlLayoutChildResized() @ portal/sc/modules/ISC_Containers.js:242
        unnamed({Obj}, 8, 0, undef) @ portal/sc/modules/ISC_Containers.js:232
        unnamed(8, 0, undef) @ portal/sc/modules/ISC_Core.js:1840
        Canvas._completeResizeBy(undef) @ portal/sc/modules/ISC_Core.js:1839
        Canvas.resizeBy(8, 0, undef, undef, undef) @ portal/sc/modules/ISC_Core.js:1835
        Canvas.resizeTo(3052, 22) @ portal/sc/modules/ISC_Core.js:1847
        Layout.resizeMembers([object Array], [object Array], true) @ portal/sc/modules/ISC_Foundation.js:245
        Layout.layoutChildren("resized", 8, 0) @ portal/sc/modules/ISC_Foundation.js:284
        Canvas._completeResizeBy() @ portal/sc/modules/ISC_Core.js:1837
        Canvas.moveBy(-8, 0, undef, true) @ portal/sc/modules/ISC_Core.js:1797
        Canvas.moveTo(-2092, 0, undef, true) @ portal/sc/modules/ISC_Core.js:1820
        Canvas.setRect(-2092, 0, 3126, 22) @ portal/sc/modules/ISC_Core.js:1605
        TabSet.placeControlLayout(3126) @ portal/sc/modules/ISC_Containers.js:241
        TabSet._controlLayoutChildResized() @ portal/sc/modules/ISC_Containers.js:242
        unnamed({Obj}, 8, 0, undef) @ portal/sc/modules/ISC_Containers.js:232
        unnamed(8, 0, undef) @ portal/sc/modules/ISC_Core.js:1840
        Canvas._completeResizeBy(undef) @ portal/sc/modules/ISC_Core.js:1839
        Canvas.resizeBy(8, 0, undef, undef, undef) @ portal/sc/modules/ISC_Core.js:1835
        Canvas.resizeTo(3044, 22) @ portal/sc/modules/ISC_Core.js:1847
        Layout.resizeMembers([object Array], [object Array], true) @ portal/sc/modules/ISC_Foundation.js:245
        Layout.layoutChildren("resized", 66, 0) @ portal/sc/modules/ISC_Foundation.js:284
        Canvas._completeResizeBy() @ portal/sc/modules/ISC_Core.js:1837
        Canvas.moveBy(-66, 0, undef, true) @ portal/sc/modules/ISC_Core.js:1797
        Canvas.moveTo(-2084, 0, undef, true) @ portal/sc/modules/ISC_Core.js:1820
        Canvas.setRect(-2084, 0, 3118, 22) @ portal/sc/modules/ISC_Core.js:1605
        TabSet.placeControlLayout(3118) @ portal/sc/modules/ISC_Containers.js:241
        TabSet.showControls() @ portal/sc/modules/ISC_Containers.js:238
        TabSet.fixLayout() @ portal/sc/modules/ISC_Containers.js:223
        TabSet._tabResized() @ portal/sc/modules/ISC_Containers.js:245
        unnamed({Obj}, 7, 4, "overflow") @ portal/sc/modules/ISC_Containers.js:193
        unnamed(7, 4, "overflow", undef, undef, undef, undef, undef) @ portal/sc/modules/ISC_Core.js:1840
        [a]MathFunction.invokeSuper(_1=>{Obj},  _2=>"$5y",  _3=>7,  _4=>4,  _5=>"overflow",  _6=>undef,  _7=>undef) @ portal/sc/modules/ISC_Core.js:219
        StatefulCanvas._resized(7, 4, "overflow") @ portal/sc/modules/ISC_Foundation.js:178
        Canvas.._adjustOverflow("redraw") @ portal/sc/modules/ISC_Core.js:1926
        Canvas._adjustOverflow("redraw") @ portal/sc/modules/ISC_Core.js:1908
        Canvas.adjustOverflow("redraw", null, true) @ portal/sc/modules/ISC_Core.js:1904
        Canvas._updateHTML() @ portal/sc/modules/ISC_Core.js:1488
        Canvas.redraw("Layout getting new size") @ portal/sc/modules/ISC_Core.js:1482
        Layout.resizeMembers([object Array], [object Array], true) @ portal/sc/modules/ISC_Foundation.js:246
        Layout.layoutChildren("memberResized: (5,0): isc_Tab_0", undef, undef, undef, undef, undef, undef, undef) @ portal/sc/modules/ISC_Foundation.js:284
        [a]MathFunction.invokeSuper(_1=>{Obj},  _2=>"layoutChildren",  _3=>"memberResized: (5,0): isc_Tab_0",  _4=>undef,  _5=>undef,  _6=>undef) @ portal/sc/modules/ISC_Core.js:219
        TabBar.layoutChildren("memberResized: (5,0): isc_Tab_0") @ portal/sc/modules/ISC_Containers.js:28
        Layout.reflowNow("memberResized: (5,0): isc_Tab_0", 4) @ portal/sc/modules/ISC_Foundation.js:298
        unnamed() @ portal/sc/modules/ISC_Foundation.js:298
        [c]Class.fireCallback(_1=>function (),  _2=>undef,  _3=>[object Array],  _4=>[object Proxy],  _5=>true) @ portal/sc/modules/ISC_Core.js:228
        Timer._fireTimeout("$ir247") @ portal/sc/modules/ISC_Core.js:900
        unnamed() @ portal/sc/modules/ISC_Core.js:896
        unnamed() @ 
    
    	at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
    	at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
    	at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
    	at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
    	at com.google.gwt.dev.shell.MethodAdaptor.invoke(MethodAdaptor.java:105)
    	at com.google.gwt.dev.shell.MethodDispatch.invoke(MethodDispatch.java:71)
    	at com.google.gwt.dev.shell.OophmSessionHandler.invoke(OophmSessionHandler.java:167)
    	at com.google.gwt.dev.shell.BrowserChannelServer.reactToMessages(BrowserChannelServer.java:281)
    	at com.google.gwt.dev.shell.BrowserChannelServer.processConnection(BrowserChannelServer.java:531)
    	at com.google.gwt.dev.shell.BrowserChannelServer.run(BrowserChannelServer.java:352)
    	at java.lang.Thread.run(Thread.java:662)
    This error pops up when the app shows a Tab control with 1 tab.

    Before I start working on smaller test cases, does anybody have any hints?

    #2
    Is this only in IE? If so, IE sets arbitrary stack depths, and can sometimes just cut off executing of a thread that would complete normally in any other browser.

    Comment


      #3
      So far in my testing, this happens in:
      Chrome 22.0.1229.94 m
      FF 6.0.2
      IE 9

      With respect to SmartGWT:
      1. This does NOT happen with 3.0p-2012-04-26
      2. This happens with 3.0p-2012-10-23
      3. This happens with 3.1d-2012-09-29

      While testing:
      1. This happens on a page with a TabSet of size 100%, with tab controls
      2. This does NOT happen when the TabSet controls are TabBarControls.TAB_SCROLLER and TabBarControls.TAB_PICKER
      3. I found a comment in my code that, when in addition to #2 I added a tab control of type HLayout on which I invoke setAutoWidth (), I got this: "com.google.gwt.core.client.JavaScriptException: (InternalError): too much recursion". This comment goes back to SmartGWT 3.0p-2012-04-26.
      4. It seems that this happens also if, in addition to #2, I add an HLayout with a TransferImgButton on which I call setSize (). If I remove the setSize (), the problem goes away

      Of course, this is what I have been able to figure out while running the whole app.
      To make my app run, I had to remove one of the controls (the one with TransferImgButtons) from the TabSet controls.
      Unfortunately I have not been able to reproduce this on a small test-case yet.

      Comment


        #4
        Hmm, seems like you've found a legitimate infinite loop issue.

        A runnable test case would be great - in the meantime, since this looks like some kind of auto-sizing issue, you could try setting your added tabControls to overflow:hidden if any are overflow:visible.

        Comment


          #5
          I spent a good chunk of additional time on this but no luck yet...

          As you said, setting my tab controls to overflow:hidden makes the failure go away, and I can clearly see that the controls now are clipped, so thanks for that!

          Let me know if you want me to try out anything in particular, otherwise I will revisit this with nightlies and will allocate more time to it after I get some work stuff out of the way...

          Comment

          Working...
          X