Update broken

goran.krampe at bluefish.se goran.krampe at bluefish.se
Fri Jun 13 08:46:58 UTC 2003


Doug Way <dway at riskmetrics.com> wrote:
> 
> I've also seen this error yesterday and today but only sporadically... 
> usually it doesn't happen.
> 
> - Doug Way
> 
> 
> On Thursday, June 12, 2003, at 06:11 PM, goran.krampe at bluefish.se wrote:
> 
> > Torsten.Bergmann at phaidros.com wrote:
> >> - take a 3.6 alpha image Build 5179 (newest) from the
> >>   FTP server
> >> - run update
> >> - it crashed with NetNameResolver doesNotUnderstand:
> >> #initializeNetworkIfFail:
> >
> > I think I saw this earlier. IIRC it is because some methods haven't 
> > been
> > recompiled. Will check tomorrow. If noone else beats me to it.
> >
> > regards, Göran

Ok, here is an analysis:

- The update mechanism forks off the downloads in parallell, that is
probably why it fails (for me) when trying to download update 5260
(which is way back after 5255 - which is the culprit)
- What happens is that 5255 removes the method #initializeNetworkIfFail:
BUT 5257 is the update that actually removes the call to it in
OldSocket! So... the parallell download process might - if you are
unlucky - end up trying to perform a download in between these two
updates being incorporated in the image.

And then, since HTTPSocket class>>httpGetDocument:args:accept:request:
calls "Socket initializeNetwork" this will in fact reference OldSocket
(because the method has been changed while being run I presume, so it is
still the old one - can be seen in the top of the menu in the debugger
because it says "DoItwith:with:with:" instead of the proper method name.

Result? Boom. But it seems rather harmless - I just killed off the
notifiers and tried again. This time the new proper code will be used
and then I got my last two missing updates.

regards, Göran



More information about the Squeak-dev mailing list