On 24 August 2012 16:10, Mariano Martinez Peck <[email protected]> wrote: > > > On Fri, Aug 24, 2012 at 4:08 PM, Igor Stasenko <[email protected]> wrote: >> >> On 24 August 2012 15:49, Mariano Martinez Peck <[email protected]> >> wrote: >> > >> > >> > On Fri, Aug 24, 2012 at 3:39 PM, Mariano Martinez Peck >> > <[email protected]> wrote: >> >> >> >> >> >> >> >> On Thu, Aug 23, 2012 at 5:44 PM, Igor Stasenko <[email protected]> >> >> wrote: >> >>> >> >>> no idea :/ >> >>> you can just resave them to go back to normal >> >>> >> >> >> >> http://code.google.com/p/pharo/issues/detail?id=6599 >> >> And now there is a test under ReleaseTest. So next time they are >> >> generated, we should know in which update this test failed. >> >> >> > >> > grrrr we have even more >> > >> > ((CompiledMethod allInstances select: [:each | (#(#NoTrailer >> > #SourcePointer >> > #VarLengthSourcePointer) includes: each trailer kind) not and: [ each >> > isInstalled ] ])) size -> 18 >> > >> VarLengthSourcePointer is OK. >> this source pointer is used for entries when .changes file goes over 32MB >> size. >> NoTrailer is used for anonymous methods and methods which bypass the >> logging their source into .changes file >> for one or another reason (so, of course you cannot have pointer to >> source , if you didn't stored the source in a first place). > > > So, actually, we should not have NoTrailer for installed methods either. > hard to say.. IIRC, by default a compiler generates the method with no trailer. and only after method's source is successfully logged the trailer kind is changed to be a source pointer. if there's an error happens which prevents method from being logged, i don't know how, but you still might have a method installed into class without being logged into .changes file.
Also, if i remember there is places which ZAPs things, clean things, they also may clear the trailers. -- Best regards, Igor Stasenko.
