ImageSegmentTest crashes (was: Re: Jenkins/Trunk/Spur (was: Re:
[squeak-dev] The Trunk: SMLoader-ul.83.mcz))
leves at elte.hu
Thu Aug 20 23:53:47 UTC 2015
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.
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:
> The 'old' Spur job
> is gone (it didn't work most of the time).
> There's a new Trunk job that is Spur-based:
> But it still crashes the VM in some image segment code. See
> related messages with Eliot.
> Best regards
>> 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:
>>>> ==================== 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:
>>> 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
>>> That's Strange…
>>> Best regards
More information about the Squeak-dev