question about Issue 207: ImageSegment discoverActiveClasses strange error

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

question about Issue 207: ImageSegment discoverActiveClasses strange error

Sheridan Mahoney
- retrying in plain text...

Hello,

I am new to Pharo, and so have been perusing the bug database,
and reading the recent posts in this list in order to investigate how
to become involved in this community.  So far, I am very impressed!
and encouraged that such a technically expert and friendly, supportive
group is coelescing on this work effort!

I have found a report that seems quite interesting, and have done
some digging into the issue described here:
http://code.google.com/p/pharo/issues/detail?id=207
( ImageSegment discoverActiveClasses strange error )
and now I have a few questions I was hoping to get feedback on.

It seems that, after using this method, some follow-up is required in
order to reset the image back to a usable state.  And there are several
options as to how to do that:

1) ImageSegment discoverActiveClasses.
ImageSegment activeClasses size printString , ' classes were active out of ' , Smalltalk allClasses size printString.

- this type of statment order will reset things ok.
       
2) ImageSegment discoverActiveClasses.
ImageSegment  recoverFromMDFault.
ImageSegment activeClasses.

- it appears you still need the activeClasses method to reset the image (which wasn't
entirely clear from the method comments - further comments may be useful here),
otherwise there are classes with methodDictionaries that are set to nil.

3) ImageSegment discoverActiveClasses.
Smalltalk at: #MDFaultDict put: Dictionary new.
ImageSegment  recoverFromMDFaultWithTrace.
Smalltalk at: #MDFaultDict.

- this sequence of statments will give the user a report of active classes along with a description of how they came to be used.
Similar to above o/w.

4)ImageSegment discoverActiveClasses.
ImageSegment swapOutInactiveClasses.

- there are at least 2 problems with this sequence -
a)  initial result is a DNU - ThreadSafeTranscript(Object)>>doesNotUnderstand: #print   
b) when you comment out the Transcript print statements to avoid the DNUs you get:
ByteString(Object)>errorImproperStore

I will be looking further into this issue, but was just wondering, firstly, is this a useful
area to be spending time, and secondly, would it be appropriate to start a new bug, or update the old one? 
Many thanks for your comments,

Sheridan Mahoney
 


_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project