Internal Error

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
4 messages Options
Reply | Threaded
Open this post in threaded view
|

Internal Error

Hilaire Fernandes-4
I have this error that show up in the browser, when I am rendering this
code:

It may look like an overflow (there are two PNG image) but I am not sure.


---
        (html paragraph)
                attributeAt: 'color'
                put: (moment isSuccess ifTrue: ['#c0ffc0'] ifFalse: ['#ff5050']);
                with:
                        [html heading: self description level: 2.
                        html text: 'Pas d''étayage : ' , self steps asString.
                        html heading: 'Capture écran' level: 3.
                        html
                                text: 'Exercice de départ';
                                break.
                        (html image)
                                document: moment pictureInitial;
                                altText: 'Capture de l''exercice';
                                fileName: 'sshot.png';
                                mimeType: 'image/png'.
                        html break.
                        html
                                text: 'Exercice réalisé';
                                break.
                        (html image)
                                document: moment pictureFinal;
                                altText: 'Capture de l''exercice';
                                fileName: 'sshot.png';
                                mimeType: 'image/png'.


---


Internal Error
Error: subscript is out of bounds: 2

MethodContext(Object)>>errorSubscriptBounds:
MethodContext(Object)>>at:
MethodContext>>tempAt:
[] in WAWalkback>>renderStackFrame:on: {[:name :index | self
renderObject: (aContext tempAt: index) labelled: na...]}
OrderedCollection(SequenceableCollection)>>withIndexDo:
[] in WAWalkback>>renderStackFrame:on: {[receiver := aContext receiver.
self renderObject: receiver labelled: '...]}
BlockContext>>renderOn:
WATableTag(WATagBrush)>>within:
[] in WATableTag(WATagBrush)>>with: {[self within: aBlock]}
BlockContext>>renderOn:
WARenderCanvas(WACanvas)>>nest:
WATableTag(WABrush)>>with:
WATableTag(WATagBrush)>>with:
WARenderCanvas(WAHtmlCanvas)>>table:
[] in WAWalkback>>renderStackFrame:on: {[html table: [receiver :=
aContext receiver. self renderObject: rec...]}
BlockContext>>renderOn:
WAGenericTag(WATagBrush)>>within:
[] in WAGenericTag(WATagBrush)>>with: {[self within: aBlock]}
BlockContext>>renderOn:
WARenderCanvas(WACanvas)>>nest:

_______________________________________________
Seaside mailing list
[hidden email]
http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside
Reply | Threaded
Open this post in threaded view
|

Re: Internal Error

Hilaire Fernandes-4
I think the error originate when fetching an object persisted with Magma.
Worst than that, after a second reload the page is rendered as expected,
after a third reload Squeak is gone...

The error seems to come from the method:

pictureInitial
    | extent morph |
    extent := step exerciceView extent.
    morph := step generateNativeExercice view extent: extent.

step is the persisted object, and generateNativeExercice does:

generateNativeExercice
    ^ (self exerciceClass perform: self method withArguments: self
arguments) counter: self timeLimit


Chris, do you see any problem doing a perform:withArguements?
Hum, according to my trace with the debugger the BANG is taking place
with the perform: message. Does it make sense to you?

Hilaire


Hilaire Fernandes a écrit :

> I have this error that show up in the browser, when I am rendering this
> code:
>
> It may look like an overflow (there are two PNG image) but I am not sure.
>
>
> ---
>     (html paragraph)
>         attributeAt: 'color'
>         put: (moment isSuccess ifTrue: ['#c0ffc0'] ifFalse: ['#ff5050']);
>         with:
>             [html heading: self description level: 2.
>             html text: 'Pas d''étayage : ' , self steps asString.
>             html heading: 'Capture écran' level: 3.
>             html
>                 text: 'Exercice de départ';
>                 break.
>             (html image)
>                 document: moment pictureInitial;
>                 altText: 'Capture de l''exercice';
>                 fileName: 'sshot.png';
>                 mimeType: 'image/png'.
>             html break.
>             html
>                 text: 'Exercice réalisé';
>                 break.
>             (html image)
>                 document: moment pictureFinal;
>                 altText: 'Capture de l''exercice';
>                 fileName: 'sshot.png';
>                 mimeType: 'image/png'.
>
>
> ---
>
>
> Internal Error
> Error: subscript is out of bounds: 2
>
> MethodContext(Object)>>errorSubscriptBounds:
> MethodContext(Object)>>at:
> MethodContext>>tempAt:
> [] in WAWalkback>>renderStackFrame:on: {[:name :index | self
> renderObject: (aContext tempAt: index) labelled: na...]}
> OrderedCollection(SequenceableCollection)>>withIndexDo:
> [] in WAWalkback>>renderStackFrame:on: {[receiver := aContext receiver.
> self renderObject: receiver labelled: '...]}
> BlockContext>>renderOn:
> WATableTag(WATagBrush)>>within:
> [] in WATableTag(WATagBrush)>>with: {[self within: aBlock]}
> BlockContext>>renderOn:
> WARenderCanvas(WACanvas)>>nest:
> WATableTag(WABrush)>>with:
> WATableTag(WATagBrush)>>with:
> WARenderCanvas(WAHtmlCanvas)>>table:
> [] in WAWalkback>>renderStackFrame:on: {[html table: [receiver :=
> aContext receiver. self renderObject: rec...]}
> BlockContext>>renderOn:
> WAGenericTag(WATagBrush)>>within:
> [] in WAGenericTag(WATagBrush)>>with: {[self within: aBlock]}
> BlockContext>>renderOn:
> WARenderCanvas(WACanvas)>>nest:

_______________________________________________
Seaside mailing list
[hidden email]
http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside
Reply | Threaded
Open this post in threaded view
|

Re: Re: Internal Error

Chris Muller-3
Hi Hilaire, it almost like a MagmaMutatingProxy is an argument to the
perform:withArguments: (either the selector or argArray).  You must
employ a ReadStrategy to ensure this does not happen.

Performance tuning is not the only purpose of ReadStrategys.  They are
also needed for those special-cases where objects that could end up
being arguments to a primitive or in-lined message like ==.

Hope this helps..

On 4/16/07, Hilaire Fernandes <[hidden email]> wrote:

> I think the error originate when fetching an object persisted with Magma.
> Worst than that, after a second reload the page is rendered as expected,
> after a third reload Squeak is gone...
>
> The error seems to come from the method:
>
> pictureInitial
>     | extent morph |
>     extent := step exerciceView extent.
>     morph := step generateNativeExercice view extent: extent.
>
> step is the persisted object, and generateNativeExercice does:
>
> generateNativeExercice
>     ^ (self exerciceClass perform: self method withArguments: self
> arguments) counter: self timeLimit
>
>
> Chris, do you see any problem doing a perform:withArguements?
> Hum, according to my trace with the debugger the BANG is taking place
> with the perform: message. Does it make sense to you?
>
> Hilaire
>
>
> Hilaire Fernandes a écrit :
> > I have this error that show up in the browser, when I am rendering this
> > code:
> >
> > It may look like an overflow (there are two PNG image) but I am not sure.
> >
> >
> > ---
> >     (html paragraph)
> >         attributeAt: 'color'
> >         put: (moment isSuccess ifTrue: ['#c0ffc0'] ifFalse: ['#ff5050']);
> >         with:
> >             [html heading: self description level: 2.
> >             html text: 'Pas d''étayage : ' , self steps asString.
> >             html heading: 'Capture écran' level: 3.
> >             html
> >                 text: 'Exercice de départ';
> >                 break.
> >             (html image)
> >                 document: moment pictureInitial;
> >                 altText: 'Capture de l''exercice';
> >                 fileName: 'sshot.png';
> >                 mimeType: 'image/png'.
> >             html break.
> >             html
> >                 text: 'Exercice réalisé';
> >                 break.
> >             (html image)
> >                 document: moment pictureFinal;
> >                 altText: 'Capture de l''exercice';
> >                 fileName: 'sshot.png';
> >                 mimeType: 'image/png'.
> >
> >
> > ---
> >
> >
> > Internal Error
> > Error: subscript is out of bounds: 2
> >
> > MethodContext(Object)>>errorSubscriptBounds:
> > MethodContext(Object)>>at:
> > MethodContext>>tempAt:
> > [] in WAWalkback>>renderStackFrame:on: {[:name :index | self
> > renderObject: (aContext tempAt: index) labelled: na...]}
> > OrderedCollection(SequenceableCollection)>>withIndexDo:
> > [] in WAWalkback>>renderStackFrame:on: {[receiver := aContext receiver.
> > self renderObject: receiver labelled: '...]}
> > BlockContext>>renderOn:
> > WATableTag(WATagBrush)>>within:
> > [] in WATableTag(WATagBrush)>>with: {[self within: aBlock]}
> > BlockContext>>renderOn:
> > WARenderCanvas(WACanvas)>>nest:
> > WATableTag(WABrush)>>with:
> > WATableTag(WATagBrush)>>with:
> > WARenderCanvas(WAHtmlCanvas)>>table:
> > [] in WAWalkback>>renderStackFrame:on: {[html table: [receiver :=
> > aContext receiver. self renderObject: rec...]}
> > BlockContext>>renderOn:
> > WAGenericTag(WATagBrush)>>within:
> > [] in WAGenericTag(WATagBrush)>>with: {[self within: aBlock]}
> > BlockContext>>renderOn:
> > WARenderCanvas(WACanvas)>>nest:
>
> _______________________________________________
> Seaside mailing list
> [hidden email]
> http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside
>

_______________________________________________
Seaside mailing list
[hidden email]
http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside
Reply | Threaded
Open this post in threaded view
|

Re: Internal Error

Philippe Marschall
In reply to this post by Hilaire Fernandes-4
Hi

At first I would say:
- You have an error including a proxy object (proxies suck for debugging)
- Seaside tries to render the error stack
- Seaside falls on the face because of the proxy

But, the error is in #tempAt: (probably the argument is too big) which
is strange because that should only involve contexts.

What Seaside version do you use?
Can you post WAWalkback>>renderStackFrame:on:?

Cheers
Philippe

2007/4/16, Hilaire Fernandes <[hidden email]>:

> I have this error that show up in the browser, when I am rendering this
> code:
>
> It may look like an overflow (there are two PNG image) but I am not sure.
>
>
> ---
>         (html paragraph)
>                 attributeAt: 'color'
>                 put: (moment isSuccess ifTrue: ['#c0ffc0'] ifFalse: ['#ff5050']);
>                 with:
>                         [html heading: self description level: 2.
>                         html text: 'Pas d''étayage : ' , self steps asString.
>                         html heading: 'Capture écran' level: 3.
>                         html
>                                 text: 'Exercice de départ';
>                                 break.
>                         (html image)
>                                 document: moment pictureInitial;
>                                 altText: 'Capture de l''exercice';
>                                 fileName: 'sshot.png';
>                                 mimeType: 'image/png'.
>                         html break.
>                         html
>                                 text: 'Exercice réalisé';
>                                 break.
>                         (html image)
>                                 document: moment pictureFinal;
>                                 altText: 'Capture de l''exercice';
>                                 fileName: 'sshot.png';
>                                 mimeType: 'image/png'.
>
>
> ---
>
>
> Internal Error
> Error: subscript is out of bounds: 2
>
> MethodContext(Object)>>errorSubscriptBounds:
> MethodContext(Object)>>at:
> MethodContext>>tempAt:
> [] in WAWalkback>>renderStackFrame:on: {[:name :index | self
> renderObject: (aContext tempAt: index) labelled: na...]}
> OrderedCollection(SequenceableCollection)>>withIndexDo:
> [] in WAWalkback>>renderStackFrame:on: {[receiver := aContext receiver.
> self renderObject: receiver labelled: '...]}
> BlockContext>>renderOn:
> WATableTag(WATagBrush)>>within:
> [] in WATableTag(WATagBrush)>>with: {[self within: aBlock]}
> BlockContext>>renderOn:
> WARenderCanvas(WACanvas)>>nest:
> WATableTag(WABrush)>>with:
> WATableTag(WATagBrush)>>with:
> WARenderCanvas(WAHtmlCanvas)>>table:
> [] in WAWalkback>>renderStackFrame:on: {[html table: [receiver :=
> aContext receiver. self renderObject: rec...]}
> BlockContext>>renderOn:
> WAGenericTag(WATagBrush)>>within:
> [] in WAGenericTag(WATagBrush)>>with: {[self within: aBlock]}
> BlockContext>>renderOn:
> WARenderCanvas(WACanvas)>>nest:
>
> _______________________________________________
> Seaside mailing list
> [hidden email]
> http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside
>

_______________________________________________
Seaside mailing list
[hidden email]
http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside