More problems with Monticello 447

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

More problems with Monticello 447

Nicolas Cellier
One of my images crashed on an infinite loop.
Don't know the origin of the problem, but I had to change

MCVersionName>>hash
        ^ (String withAll: self versionName) hash

I also have CurrentReadOnlySourceFiles undefined, but maybe I missed
some preamble/postscript ?

Nicolas

Reply | Threaded
Open this post in threaded view
|

Re: More problems with Monticello 447

Nicolas Cellier
2011/3/26 Nicolas Cellier <[hidden email]>:
> One of my images crashed on an infinite loop.
> Don't know the origin of the problem, but I had to change
>
> MCVersionName>>hash
>        ^ (String withAll: self versionName) hash
>

I still think (self versionName hash) is very dangerous


> I also have CurrentReadOnlySourceFiles undefined, but maybe I missed
> some preamble/postscript ?
>

Never mind, the second was a load order problem (I had some local
changes in MC so I did a manual update).

> Nicolas
>

Reply | Threaded
Open this post in threaded view
|

Re: More problems with Monticello 447

Levente Uzonyi-2
In reply to this post by Nicolas Cellier
On Sat, 26 Mar 2011, Nicolas Cellier wrote:

> One of my images crashed on an infinite loop.
> Don't know the origin of the problem, but I had to change
>
> MCVersionName>>hash
> ^ (String withAll: self versionName) hash

#versionName always returns a ByteString, so it won't be recursive.
Because of this, it's not worth putting MCVersionName to hashed
collections, because the performance will be poor.

>
> I also have CurrentReadOnlySourceFiles undefined, but maybe I missed
> some preamble/postscript ?

There's no preamble/postscript related to CurrentReadOnlySourceFiles, it's
in Files-ul.104. There's also an mcm to ensure the proper load order, so I
guess it's only a problem with your image.


Levente

>
> Nicolas
>
>

Reply | Threaded
Open this post in threaded view
|

Re: More problems with Monticello 447

Nicolas Cellier
2011/3/26 Levente Uzonyi <[hidden email]>:

> On Sat, 26 Mar 2011, Nicolas Cellier wrote:
>
>> One of my images crashed on an infinite loop.
>> Don't know the origin of the problem, but I had to change
>>
>> MCVersionName>>hash
>>        ^ (String withAll: self versionName) hash
>
> #versionName always returns a ByteString, so it won't be recursive. Because
> of this, it's not worth putting MCVersionName to hashed collections, because
> the performance will be poor.
>

OK, don't know what went on, I probably messed with load order or something.
There was a removed (String>>versionName ^self) that might explain...

However, I still consider this construction as fragile, since it
relies on species.
A guiding comment in MCVersionName>>species would be welcome.
It would be even nicer to assert the implementation with a TestCase like:

    self assert: MCVersionName someInstance species ~= MCVersionName.

Since #first: might be changed in the future and not use #species
anymore (who knows...) ,
then it might be even better to document the intention with a TestCase like:

    self assert: MCVersionName someInstance versionName class ~= MCVersionName.

Nicolas

>>
>> I also have CurrentReadOnlySourceFiles undefined, but maybe I missed
>> some preamble/postscript ?
>
> There's no preamble/postscript related to CurrentReadOnlySourceFiles, it's
> in Files-ul.104. There's also an mcm to ensure the proper load order, so I
> guess it's only a problem with your image.
>
>
> Levente
>
>>
>> Nicolas
>>
>>
>
>

Reply | Threaded
Open this post in threaded view
|

Re: More problems with Monticello 447

Levente Uzonyi-2
On Mon, 28 Mar 2011, Nicolas Cellier wrote:

> 2011/3/26 Levente Uzonyi <[hidden email]>:
>> On Sat, 26 Mar 2011, Nicolas Cellier wrote:
>>
>>> One of my images crashed on an infinite loop.
>>> Don't know the origin of the problem, but I had to change
>>>
>>> MCVersionName>>hash
>>>        ^ (String withAll: self versionName) hash
>>
>> #versionName always returns a ByteString, so it won't be recursive. Because
>> of this, it's not worth putting MCVersionName to hashed collections, because
>> the performance will be poor.
>>
>
> OK, don't know what went on, I probably messed with load order or something.
> There was a removed (String>>versionName ^self) that might explain...
>
> However, I still consider this construction as fragile, since it
> relies on species.
> A guiding comment in MCVersionName>>species would be welcome.
> It would be even nicer to assert the implementation with a TestCase like:
>
>    self assert: MCVersionName someInstance species ~= MCVersionName.
>
> Since #first: might be changed in the future and not use #species
> anymore (who knows...) ,
> then it might be even better to document the intention with a TestCase like:
>
>    self assert: MCVersionName someInstance versionName class ~= MCVersionName.
I agree.


Levente

>
> Nicolas
>
>>>
>>> I also have CurrentReadOnlySourceFiles undefined, but maybe I missed
>>> some preamble/postscript ?
>>
>> There's no preamble/postscript related to CurrentReadOnlySourceFiles, it's
>> in Files-ul.104. There's also an mcm to ensure the proper load order, so I
>> guess it's only a problem with your image.
>>
>>
>> Levente
>>
>>>
>>> Nicolas
>>>
>>>
>>
>>
>
>