ImageSegmentTest crashes (was: Re: Jenkins/Trunk/Spur (was: Re: [squeak-dev] The Trunk: SMLoader-ul.83.mcz))

Tobias Pape Das.Linux at gmx.de
Fri Aug 21 06:25:51 UTC 2015


Hi,

On 21.08.2015, at 01:53, Levente Uzonyi <leves at elte.hu> wrote:

> Hi All,
> 
> Today I learned that ImageSegmentTest unloads and reloads the "non-active" UIManagers from the image. Since ImageSegments are broken in Spur, the reload will (may?) be partial. In my image this results in "half-loaded" methods: the methods don't get reinstalled into the MethodDictionary, but their selectors are loaded. It usually happens to MVCUIManager >> #dialogStringFromQuery:withTitle:, and sometimes happens to DummyUIManager's methods as well.
> 
> The result is a broken MethodDictionary, which can easily be the cause of the VM crashes, and a broken Symbol table, because the selector's name is a non-interned Symbol.
> 
> I think we should disable ImageSegmentTest >> #testImageSegmentsShouldBeWritableToaFile until ImageSegments get fixed in Spur, and/or modify the test to unload/reload transient classes instead of ones which may be used in the future.

Thank you for tracking this down!
I really wondered why the methods disappeared.

Best regards
	-Tobias


> 
> Levente
> 
> On Sat, 15 Aug 2015, Tobias Pape wrote:
> 
>> Hi Levente,
>> 
>> On 15.08.2015, at 11:16, Levente Uzonyi <leves at elte.hu> wrote:
>> 
>>> Hi Tobias,
>>> 
>>> Thanks for pointing it out. I thought Bert made some changes which ensure that such dependencies don't require a separate update map. I tested the update process on my machine, and it worked for me.
>>> Anyway, I've modified the last update map to load Collections-ul.641 before other packages related to this change.
>>> Btw, am I right that Jenkins is still using a non-Spur image to run the tests?
>> 
>> The traditional Job is non-Spur:
>> 
>> 	http://build.squeak.org/job/SqueakTrunk/
>> 
>> The 'old' Spur job
>> 
>> 	~~http://build.squeak.org/job/SqueakTrunkOnSpur/~~
>> 
>> is gone (it didn't work most of the time).
>> 
>> There's a new Trunk job that is Spur-based:
>> 
>> 	http://build.squeak.org/job/Trunk/
>> 
>> But it still crashes the VM in some image segment code. See
>> related messages with Eliot.
>> 
>> Best regards
>> 	-Tobias
>> 
>>> 
>>> On Sat, 15 Aug 2015, Tobias Pape wrote:
>>> 
>>>> 
>>>> On 14.08.2015, at 20:33, commits at source.squeak.org wrote:
>>>> 
>>>>> Levente Uzonyi uploaded a new version of SMLoader to project The Trunk:
>>>>> http://source.squeak.org/trunk/SMLoader-ul.83.mcz
>>>>> 
>>>>> ==================== Summary ====================
>>>>> 
>>>>> Name: SMLoader-ul.83
>>>>> Author: ul
>>>>> Time: 14 August 2015, 7:02:58.782 pm
>>>>> UUID: 4898c13c-15f3-4ed8-867a-df8d79905124
>>>>> Ancestors: SMLoader-mt.82
>>>>> 
>>>>> #includesSubString: -> #includesSubstring:
>>>>> 
>>>>> =============== Diff against SMLoader-mt.82 ===============
>>>>> 
>>>>> Item was changed:
>>>> 
>>>> Hi. The Trunk says:
>>>> 
>>>> http://build.squeak.org/job/Trunk/default/10/
>>>> 
>>>> 2015-08-14T22:46:37.575+01:00: Installing Tools-ul.630
>>>> 2015-08-14T22:46:37.645+01:00: Installing Protocols-ul.49
>>>> 2015-08-14T22:46:37.71+01:00: Installing SMLoader-ul.83
>>>> vvvvvvvvvvvvvvvvvv MessageNotUnderstood: ByteString>>includesSubstring: vvvvvvvvvvvvvvvvvv
>>>> The time is 2015-08-14T22:46:37.743+01:00
>>>> ByteString(Object)>>doesNotUnderstand: #includesSubstring:
>>>> [] in [] in SMLoaderPlus class>>initialize
>>>> OrderedCollection>>select:
>>>> 
>>>> 
>>>> That's Strange…
>>>> 
>>>> 
>>>> Best regards
>>>> 	-Tobias




More information about the Squeak-dev mailing list