[squeak-dev] Re: Troubleshooting and/or recovering from VM hang?

Jerome Peace peace_the_dreamer at yahoo.com
Mon Sep 15 20:51:51 UTC 2008


[squeak-dev] Re: Troubleshooting and/or recovering from VM hang?

Hi Phil,
Thanks for the screenshot.

3.10.2 can't read the pr because something in the encoding does
not conform with utf8. 
Projects can only be trusted to load into the versions that saved them.

 

***
>pbpublist (gmail) pbpublist at gmail.com 
>Mon Sep 15 06:31:37 UTC 2008 
>
>Jerome,
>
>Thanks for the information-packed reply.  I'll also send a private  
>email with a couple of attachments (a screenshot and the .pr file) as  
>to not congest the list, but what I did was pretty straight-forward...
>
>On Sep 14, 2008, at 10:26 PM, Jerome Peace wrote:
>
>> Next steps:
>> Describe exactly how to recreate the problem from a fresh 3.10.2 image
>> (what did you load/change etc)
>
>I'm attempting to load a rather old Morphic project file (obtained  
>from http://wiki.squeak.org/squeak/1773) which results in the error:
>1) From a vanilla 3.10.2 image, it doesn't hang but rather appears to  
>crash (pops up a *** System Error handling failed *** window)
>2) From the latest vanilla developer image from
>http://damien.cassou.free.fr/squeak-dev.html 
>  (which is what I was running) I get the hang.

Ah. Damiens stuff must be considered beta bordering on alpha.
He's put things together
 but the integretion testing doesn't happen by itself.

As I mentioned above projects are very fragile across time.  
They can quickly become incompatible.

If you are trying to bring connector 2 stuff up to date. 
I would suggest:
1) Get it up in running in an image it was meant for. 
Old image are on the ftp site so you can get the 3.6 image. 
Or you may find an image with the connector 2 stuff loaded.
1a) Having successfully done that,
 locate the changeset for connector-2 and save it.
That will give you something to load into a current image.

Now you can go back to a current image
 and try to make the change set work to your satisfaction.
I would suggest requesting a code browser before installing the code into 
the image. 
>From the screen shot it is clear something is sending the unimplemted message
while trying to put the debugger up. You will need to get around that by either
modifying the message as suggested in the deprecated code or adding a definition
to handle the message when it comes up.
I don't anticipate having time to look into the project itself. So you need
to expect to do the leg/eyeball work. I can give guidance if you describe
what you do with enough precision as you have done so far.

I would suggest simpliest things first. 
Get it working in a 3.10.2 basic image 
 (with connecttors added from the universe).
Or find an etoys or squeakland image and get it working in that. 
Those images already support connectors. On the other had those images
have branched out from squeak-devs code.
I don't know which decision would serve your purposes best.

Yours in service and curiosity, --Jerome Peace



>> <...>
>> Troubleshooting:
>> Look for packages you loaded that were meant for 3.8 or earlier.
>> Look in the image for senders of the offending message  
>> #addedOrRemovedSubmorph:
>>
>
>Am I correct in assuming this information wouldn't be relevant since I  
>can reproduce with standard images?
>
The information is very relevant.
Who and why an umimplemented message is being sent
 will point to the broken code.
I could not find any senders in basic 3.10.2.
So something has reintroduced this old language.
It's probably in your connector 2 changeset. 
But it may be in Damien's fuller image.
Its important to eliminate one of those two possiblities.
So looking for it before you load your project will determine if 
Damien's image has problems or if the problem is in the project.
The first rule of troubleshooting is first hand information. 

>> The vm is probably doing what it ought but everytime the image tries  
>> to raise a debug window
>> it is probably running into the DNU which causes an infinite debug  
>> loop.
>
>Just curious... DNU?
Does Not Understand, an abbreviation for the error message.
In your case it was actually an MNU.
They are so close I allow myself to be confused.
>
>>
>>
<...>

***



      



More information about the Squeak-dev mailing list