[vwnc] VW7.6 -- HELP I have a class that is acting in a very strange manner

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

[vwnc] VW7.6 -- HELP I have a class that is acting in a very strange manner

Dennis smith-4
I have a class with a number if ivars (no conflicts, I checked)
and quite a few methods, mostly read and write accessors for the ivars
with behavior, not just accessing.

I place a halt at the start of one of the methods and also in a method
that this method invokes (in another object/class).

One expects it to stop on the first halt (I have no exception handlers,
just the default VW handler) and then on proceed to stop at the next halt.

What occurs is that it stops at the second halt, showing in the stack
the first method with a halt and other methods prior to it which appear
correct.

If I click on something else on the stack in the debugger, nothing happens,
still looking at the 2nd halt.  Proceed in the debugger freezes the image.

If I try and do pretty much the same thing with any other class, no problem
(we have lots of business classes subclassed from the same main business
    class which have similar structure).

I looked for methods in the offending class that might conflict with
something
in Object, ran a script to check -- there are none, instance or class side.

Anyone have any thoughts on what kind of thing I might look for?

--
Dennis Smith                         +1 416.798.7948
Cherniak Software Development Corporation   Fax: +1 416.798.0948
509-2001 Sheppard Avenue East        [hidden email]
Toronto, ON M2J 4Z8              sip:[hidden email]
Canada         http://www.CherniakSoftware.com
Entrance off Yorkland Blvd south of Sheppard Ave east of the DVP

_______________________________________________
vwnc mailing list
[hidden email]
http://lists.cs.uiuc.edu/mailman/listinfo/vwnc
Reply | Threaded
Open this post in threaded view
|

Re: [vwnc] VW7.6 -- HELP I have a class that is acting in a verystrange manner

Andres Valloud-6
Can you reproduce this issue with a simple fileout in a vanilla image?

-----Original Message-----
From: [hidden email] [mailto:[hidden email]] On
Behalf Of Dennis Smith
Sent: Wednesday, February 25, 2009 12:56 PM
To: VWNC,
Subject: [vwnc] VW7.6 -- HELP I have a class that is acting in a
verystrange manner

I have a class with a number if ivars (no conflicts, I checked) and
quite a few methods, mostly read and write accessors for the ivars with
behavior, not just accessing.

I place a halt at the start of one of the methods and also in a method
that this method invokes (in another object/class).

One expects it to stop on the first halt (I have no exception handlers,
just the default VW handler) and then on proceed to stop at the next
halt.

What occurs is that it stops at the second halt, showing in the stack
the first method with a halt and other methods prior to it which appear
correct.

If I click on something else on the stack in the debugger, nothing
happens, still looking at the 2nd halt.  Proceed in the debugger freezes
the image.

If I try and do pretty much the same thing with any other class, no
problem (we have lots of business classes subclassed from the same main
business
    class which have similar structure).

I looked for methods in the offending class that might conflict with
something in Object, ran a script to check -- there are none, instance
or class side.

Anyone have any thoughts on what kind of thing I might look for?

--
Dennis Smith                         +1 416.798.7948
Cherniak Software Development Corporation   Fax: +1 416.798.0948
509-2001 Sheppard Avenue East        [hidden email]
Toronto, ON M2J 4Z8              sip:[hidden email]
Canada         http://www.CherniakSoftware.com
Entrance off Yorkland Blvd south of Sheppard Ave east of the DVP

_______________________________________________
vwnc mailing list
[hidden email]
http://lists.cs.uiuc.edu/mailman/listinfo/vwnc

_______________________________________________
vwnc mailing list
[hidden email]
http://lists.cs.uiuc.edu/mailman/listinfo/vwnc
Reply | Threaded
Open this post in threaded view
|

Re: [vwnc] VW7.6 -- HELP I have a class that is acting in a verystrange manner

Dennis smith-4
Ah, that would be very nice -- but not likely :(

I will continue working, I have a few thoughts -- and if I resolve it
tonight
I will post what I found -- even if its embarrassing :)

Valloud, Andres wrote:

> Can you reproduce this issue with a simple fileout in a vanilla image?
>
> -----Original Message-----
> From: [hidden email] [mailto:[hidden email]] On
> Behalf Of Dennis Smith
> Sent: Wednesday, February 25, 2009 12:56 PM
> To: VWNC,
> Subject: [vwnc] VW7.6 -- HELP I have a class that is acting in a
> verystrange manner
>
> I have a class with a number if ivars (no conflicts, I checked) and
> quite a few methods, mostly read and write accessors for the ivars with
> behavior, not just accessing.
>
> I place a halt at the start of one of the methods and also in a method
> that this method invokes (in another object/class).
>
> One expects it to stop on the first halt (I have no exception handlers,
> just the default VW handler) and then on proceed to stop at the next
> halt.
>
> What occurs is that it stops at the second halt, showing in the stack
> the first method with a halt and other methods prior to it which appear
> correct.
>
> If I click on something else on the stack in the debugger, nothing
> happens, still looking at the 2nd halt.  Proceed in the debugger freezes
> the image.
>
> If I try and do pretty much the same thing with any other class, no
> problem (we have lots of business classes subclassed from the same main
> business
>     class which have similar structure).
>
> I looked for methods in the offending class that might conflict with
> something in Object, ran a script to check -- there are none, instance
> or class side.
>
> Anyone have any thoughts on what kind of thing I might look for?
>
>  

--
Dennis Smith                         +1 416.798.7948
Cherniak Software Development Corporation   Fax: +1 416.798.0948
509-2001 Sheppard Avenue East        [hidden email]
Toronto, ON M2J 4Z8              sip:[hidden email]
Canada         http://www.CherniakSoftware.com
Entrance off Yorkland Blvd south of Sheppard Ave east of the DVP

_______________________________________________
vwnc mailing list
[hidden email]
http://lists.cs.uiuc.edu/mailman/listinfo/vwnc
Reply | Threaded
Open this post in threaded view
|

Re: [vwnc] VW7.6 -- HELP I have a class that is acting in a verystrange manner

Andres Valloud-6
Ahh, sounds like maybe I get another exercise for my books :)...

-----Original Message-----
From: Dennis Smith [mailto:[hidden email]]
Sent: Wednesday, February 25, 2009 1:22 PM
To: Valloud, Andres
Cc: VW NC
Subject: Re: [vwnc] VW7.6 -- HELP I have a class that is acting in a
verystrange manner

Ah, that would be very nice -- but not likely :(

I will continue working, I have a few thoughts -- and if I resolve it
tonight I will post what I found -- even if its embarrassing :)

Valloud, Andres wrote:
> Can you reproduce this issue with a simple fileout in a vanilla image?

>
> -----Original Message-----
> From: [hidden email] [mailto:[hidden email]] On
> Behalf Of Dennis Smith
> Sent: Wednesday, February 25, 2009 12:56 PM
> To: VWNC,
> Subject: [vwnc] VW7.6 -- HELP I have a class that is acting in a
> verystrange manner
>
> I have a class with a number if ivars (no conflicts, I checked) and
> quite a few methods, mostly read and write accessors for the ivars
> with behavior, not just accessing.
>
> I place a halt at the start of one of the methods and also in a method

> that this method invokes (in another object/class).
>
> One expects it to stop on the first halt (I have no exception
> handlers, just the default VW handler) and then on proceed to stop at
> the next halt.
>
> What occurs is that it stops at the second halt, showing in the stack
> the first method with a halt and other methods prior to it which
> appear correct.
>
> If I click on something else on the stack in the debugger, nothing
> happens, still looking at the 2nd halt.  Proceed in the debugger
> freezes the image.
>
> If I try and do pretty much the same thing with any other class, no
> problem (we have lots of business classes subclassed from the same
> main business
>     class which have similar structure).
>
> I looked for methods in the offending class that might conflict with
> something in Object, ran a script to check -- there are none, instance

> or class side.
>
> Anyone have any thoughts on what kind of thing I might look for?
>
>  

--
Dennis Smith                         +1 416.798.7948
Cherniak Software Development Corporation   Fax: +1 416.798.0948
509-2001 Sheppard Avenue East        [hidden email]
Toronto, ON M2J 4Z8              sip:[hidden email]
Canada         http://www.CherniakSoftware.com
Entrance off Yorkland Blvd south of Sheppard Ave east of the DVP


_______________________________________________
vwnc mailing list
[hidden email]
http://lists.cs.uiuc.edu/mailman/listinfo/vwnc
Reply | Threaded
Open this post in threaded view
|

Re: [vwnc] VW7.6 -- HELP I have a class that is acting in a very strange manner

Reinout Heeck
In reply to this post by Dennis smith-4

Here's some buckshot:

-The debugger will recurse if you put breakpoints in code that the  
debugger needs,
this happens when putting breakpoints in the View hierarchy for  
instance.
In your case: is any of your code registered with/used by the debugger  
in any way, like would happen if you implemented your own  
#inspectorExtraAttributes (or perhaps merely #printString) on your  
object. Is #printString exercising either of your two probed methods?


-The debugger will hang the system if you step into some critical code  
(that is protected by a semaphore) that the debugger or rest of the  
system needs. The lock around symbol table allocations might be an  
example.

-To avoid these kind of locks the system contains a sprinkling of  
pixiedust (see the senders of #valueUninterruptably). This method  
might explain your debugger opening at the second breakpoint/halt  
instead of the first.

-Finally: halts and breakpoints are mere exceptions. If you have an  
exception handler that is trying to do something 'smart' with all  
exception types it might break the debugger - but you made explicit  
that this is not the case...



HTH,

Reinout
-------

On Feb 25, 2009, at 9:56 PM, Dennis Smith wrote:

> I have a class with a number if ivars (no conflicts, I checked)
> and quite a few methods, mostly read and write accessors for the ivars
> with behavior, not just accessing.
>
> I place a halt at the start of one of the methods and also in a method
> that this method invokes (in another object/class).
>
> One expects it to stop on the first halt (I have no exception  
> handlers,
> just the default VW handler) and then on proceed to stop at the next  
> halt.
>
> What occurs is that it stops at the second halt, showing in the stack
> the first method with a halt and other methods prior to it which  
> appear
> correct.
>
> If I click on something else on the stack in the debugger, nothing  
> happens,
> still looking at the 2nd halt.  Proceed in the debugger freezes the  
> image.
>
> If I try and do pretty much the same thing with any other class, no  
> problem
> (we have lots of business classes subclassed from the same main  
> business
>    class which have similar structure).
>
> I looked for methods in the offending class that might conflict with
> something
> in Object, ran a script to check -- there are none, instance or  
> class side.
>
> Anyone have any thoughts on what kind of thing I might look for?
>
> --
> Dennis Smith                         +1 416.798.7948
> Cherniak Software Development Corporation   Fax: +1 416.798.0948
> 509-2001 Sheppard Avenue East        [hidden email]
> Toronto, ON M2J 4Z8              sip:[hidden email]
> Canada         http://www.CherniakSoftware.com
> Entrance off Yorkland Blvd south of Sheppard Ave east of the DVP
>
> _______________________________________________
> vwnc mailing list
> [hidden email]
> http://lists.cs.uiuc.edu/mailman/listinfo/vwnc
>

_______________________________________________
vwnc mailing list
[hidden email]
http://lists.cs.uiuc.edu/mailman/listinfo/vwnc
Reply | Threaded
Open this post in threaded view
|

Re: [vwnc] VW7.6 -- HELP I have a class that is acting in a very strange manner

Thomas Brodt
In reply to this post by Dennis smith-4
Just a thought: Do you have a printString (debugString) defined? Because
the debugger calls printString of the objects in the stack when halting
in a method, and this invocation printString can cause other halts in
your accessors.

Thomas

Dennis Smith schrieb:

> I have a class with a number if ivars (no conflicts, I checked)
> and quite a few methods, mostly read and write accessors for the ivars
> with behavior, not just accessing.
>
> I place a halt at the start of one of the methods and also in a method
> that this method invokes (in another object/class).
>
> One expects it to stop on the first halt (I have no exception handlers,
> just the default VW handler) and then on proceed to stop at the next halt.
>
> What occurs is that it stops at the second halt, showing in the stack
> the first method with a halt and other methods prior to it which appear
> correct.
>
> If I click on something else on the stack in the debugger, nothing happens,
> still looking at the 2nd halt.  Proceed in the debugger freezes the image.
>
> If I try and do pretty much the same thing with any other class, no problem
> (we have lots of business classes subclassed from the same main business
>     class which have similar structure).
>
> I looked for methods in the offending class that might conflict with
> something
> in Object, ran a script to check -- there are none, instance or class side.
>
> Anyone have any thoughts on what kind of thing I might look for?
>
>  

_______________________________________________
vwnc mailing list
[hidden email]
http://lists.cs.uiuc.edu/mailman/listinfo/vwnc
Reply | Threaded
Open this post in threaded view
|

Re: [vwnc] VW7.6 -- HELP I have a class that is acting in a very strange manner

Dennis smith-4
In reply to this post by Reinout Heeck
Thank you to everyone -- all the thoughts and suggestions helped me to think
about what might be happening.  Here is a quick summary, although I may never
know exactly the events that caused the exact symptoms.

1. turns out it was NOT just this class, this was a little used table view (DataSet actually)
    of a business object.
2. the methods were those accessed by an AspectAdaptor connected to the DataSet.
3. latest symptom, a breakpoint in the method, use Event-Faithful Debugging,
    the break would occur at the END of the method (a number of statements past the
    breakpoint)
4. seems that in my window-event-handler, for any window event, I was updating the
    valueHolder for the object of the DataSet and thus re-kicking all the AspectAdaptor's.
    This could get a bit much for anyone -- window events do occur quite often when
    you do something!
    Turns out it should only have kicked the valueHolder IF it also caused a
    popup window to close (there was no popup window) -- it was just sloppy code.

I certainly would expect the above to cause recursions on exceptions, and UI stuff is
often difficult to debug anyway, so fixing this fixed my problem!!

Reinout Heeck wrote:
Here's some buckshot:

-The debugger will recurse if you put breakpoints in code that the  
debugger needs,
this happens when putting breakpoints in the View hierarchy for  
instance.
In your case: is any of your code registered with/used by the debugger  
in any way, like would happen if you implemented your own  
#inspectorExtraAttributes (or perhaps merely #printString) on your  
object. Is #printString exercising either of your two probed methods?


-The debugger will hang the system if you step into some critical code  
(that is protected by a semaphore) that the debugger or rest of the  
system needs. The lock around symbol table allocations might be an  
example.

-To avoid these kind of locks the system contains a sprinkling of  
pixiedust (see the senders of #valueUninterruptably). This method  
might explain your debugger opening at the second breakpoint/halt  
instead of the first.

-Finally: halts and breakpoints are mere exceptions. If you have an  
exception handler that is trying to do something 'smart' with all  
exception types it might break the debugger - but you made explicit  
that this is not the case...



HTH,

Reinout
-------

On Feb 25, 2009, at 9:56 PM, Dennis Smith wrote:

  
I have a class with a number if ivars (no conflicts, I checked)
and quite a few methods, mostly read and write accessors for the ivars
with behavior, not just accessing.

I place a halt at the start of one of the methods and also in a method
that this method invokes (in another object/class).

One expects it to stop on the first halt (I have no exception  
handlers,
just the default VW handler) and then on proceed to stop at the next  
halt.

What occurs is that it stops at the second halt, showing in the stack
the first method with a halt and other methods prior to it which  
appear
correct.

If I click on something else on the stack in the debugger, nothing  
happens,
still looking at the 2nd halt.  Proceed in the debugger freezes the  
image.

If I try and do pretty much the same thing with any other class, no  
problem
(we have lots of business classes subclassed from the same main  
business
   class which have similar structure).

I looked for methods in the offending class that might conflict with
something
in Object, ran a script to check -- there are none, instance or  
class side.

Anyone have any thoughts on what kind of thing I might look for?

-- 
Dennis Smith                 		         +1 416.798.7948
Cherniak Software Development Corporation   Fax: +1 416.798.0948
509-2001 Sheppard Avenue East        [hidden email]
Toronto, ON M2J 4Z8              <a class="moz-txt-link-freetext" href="sip:dennis@CherniakSoftware.com">sip:dennis@...
Canada			         http://www.CherniakSoftware.com
Entrance off Yorkland Blvd south of Sheppard Ave east of the DVP

_______________________________________________
vwnc mailing list
[hidden email]
http://lists.cs.uiuc.edu/mailman/listinfo/vwnc

    

_______________________________________________
vwnc mailing list
[hidden email]
http://lists.cs.uiuc.edu/mailman/listinfo/vwnc
  

-- 
Dennis Smith                 		         +1 416.798.7948
Cherniak Software Development Corporation   Fax: +1 416.798.0948
509-2001 Sheppard Avenue East        [hidden email]
Toronto, ON M2J 4Z8              <a class="moz-txt-link-freetext" href="sip:dennis@CherniakSoftware.com">sip:dennis@...
Canada			         http://www.CherniakSoftware.com
Entrance off Yorkland Blvd south of Sheppard Ave east of the DVP

_______________________________________________
vwnc mailing list
[hidden email]
http://lists.cs.uiuc.edu/mailman/listinfo/vwnc
Reply | Threaded
Open this post in threaded view
|

Re: [vwnc] VW7.6 -- HELP I have a class that is acting in a very strange manner

Terry Raymond

Dennis

 

Did you set ‘Use event faithful debugging’ ?

 

If not, you should always have it set unless you encounter a situation

where you do not want it set. It really should default to being set.

 

Terry

===========================================================
Terry Raymond
Crafted Smalltalk
80 Lazywood Ln.
Tiverton, RI  02878
(401) 624-4517      [hidden email]
<http://www.craftedsmalltalk.com>
===========================================================


From: [hidden email] [mailto:[hidden email]] On Behalf Of Dennis Smith
Sent: Thursday, February 26, 2009 8:08 AM
To: Reinout Heeck
Cc: VWNC,
Subject: Re: [vwnc] VW7.6 -- HELP I have a class that is acting in a very strange manner

 

Thank you to everyone -- all the thoughts and suggestions helped me to think
about what might be happening.  Here is a quick summary, although I may never
know exactly the events that caused the exact symptoms.

1. turns out it was NOT just this class, this was a little used table view (DataSet actually)
    of a business object.
2. the methods were those accessed by an AspectAdaptor connected to the DataSet.
3. latest symptom, a breakpoint in the method, use Event-Faithful Debugging,
    the break would occur at the END of the method (a number of statements past the
    breakpoint)
4. seems that in my window-event-handler, for any window event, I was updating the
    valueHolder for the object of the DataSet and thus re-kicking all the AspectAdaptor's.
    This could get a bit much for anyone -- window events do occur quite often when
    you do something!
    Turns out it should only have kicked the valueHolder IF it also caused a
    popup window to close (there was no popup window) -- it was just sloppy code.

I certainly would expect the above to cause recursions on exceptions, and UI stuff is
often difficult to debug anyway, so fixing this fixed my problem!!

Reinout Heeck wrote:

Here's some buckshot:
 
-The debugger will recurse if you put breakpoints in code that the  
debugger needs,
this happens when putting breakpoints in the View hierarchy for  
instance.
In your case: is any of your code registered with/used by the debugger  
in any way, like would happen if you implemented your own  
#inspectorExtraAttributes (or perhaps merely #printString) on your  
object. Is #printString exercising either of your two probed methods?
 
 
-The debugger will hang the system if you step into some critical code  
(that is protected by a semaphore) that the debugger or rest of the  
system needs. The lock around symbol table allocations might be an  
example.
 
-To avoid these kind of locks the system contains a sprinkling of  
pixiedust (see the senders of #valueUninterruptably). This method  
might explain your debugger opening at the second breakpoint/halt  
instead of the first.
 
-Finally: halts and breakpoints are mere exceptions. If you have an  
exception handler that is trying to do something 'smart' with all  
exception types it might break the debugger - but you made explicit  
that this is not the case...
 
 
 
HTH,
 
Reinout
-------
 
On Feb 25, 2009, at 9:56 PM, Dennis Smith wrote:
 
  
I have a class with a number if ivars (no conflicts, I checked)
and quite a few methods, mostly read and write accessors for the ivars
with behavior, not just accessing.
 
I place a halt at the start of one of the methods and also in a method
that this method invokes (in another object/class).
 
One expects it to stop on the first halt (I have no exception  
handlers,
just the default VW handler) and then on proceed to stop at the next  
halt.
 
What occurs is that it stops at the second halt, showing in the stack
the first method with a halt and other methods prior to it which  
appear
correct.
 
If I click on something else on the stack in the debugger, nothing  
happens,
still looking at the 2nd halt.  Proceed in the debugger freezes the  
image.
 
If I try and do pretty much the same thing with any other class, no  
problem
(we have lots of business classes subclassed from the same main  
business
   class which have similar structure).
 
I looked for methods in the offending class that might conflict with
something
in Object, ran a script to check -- there are none, instance or  
class side.
 
Anyone have any thoughts on what kind of thing I might look for?
 
-- 
Dennis Smith                                    +1 416.798.7948
Cherniak Software Development Corporation   Fax: +1 416.798.0948
509-2001 Sheppard Avenue East        [hidden email]
Toronto, ON M2J 4Z8              <a
href="sip:dennis@CherniakSoftware.com">sip:dennis@...
Canada                           http://www.CherniakSoftware.com
Entrance off Yorkland Blvd south of Sheppard Ave east of the DVP
 
_______________________________________________
vwnc mailing list
[hidden email]
http://lists.cs.uiuc.edu/mailman/listinfo/vwnc
 
    
 
_______________________________________________
vwnc mailing list
[hidden email]
http://lists.cs.uiuc.edu/mailman/listinfo/vwnc
  



-- 
Dennis Smith                                  +1 416.798.7948
Cherniak Software Development Corporation   Fax: +1 416.798.0948
509-2001 Sheppard Avenue East        [hidden email]
Toronto, ON M2J 4Z8              <a
href="sip:dennis@CherniakSoftware.com">sip:dennis@...
Canada                         http://www.CherniakSoftware.com
Entrance off Yorkland Blvd south of Sheppard Ave east of the DVP

_______________________________________________
vwnc mailing list
[hidden email]
http://lists.cs.uiuc.edu/mailman/listinfo/vwnc